trafficserver 入坑(六)过滤POST请求
贵贵的博客 ( http://blog.linuxphp.org/ ) :
为什么过滤
最近发现ats缓存总是被莫名的清掉,查日志发现有TCP_REFRESH_MISS/200 POST的日志,然后就会回源。日志如下
测试流程如下
修改思路
先是把cache.config中的method指定为get了,post也批定不cache了,但是还是不行,于是只能从nginx下手把POST请求全转走,配置如下
set $CacheFlag 1; location / { if ($request_method = POST) { set $CacheFlag 0; rewrite ^/(.*)$ /NOCACHE/$1 last; } # 转发到ats,此处略去... ... } location /NOCACHE/ { if ($CacheFlag = "1") { return 403; } # 跳过ats, 直接转发到回源地址,此处略去 ... }
修改后测试正常
文章来源:
Author:linuxphp@qq.com(keminar)
link:http://blog.linuxphp.org/archives/1647/