免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3742 | 回复: 6
打印 上一主题 下一主题

[proxy] ATS 无法缓存PHP了 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-01-05 11:05 |只看该作者 |倒序浏览
本帖最后由 llzqq 于 2013-01-05 11:07 编辑

以前没注意过这个问题,今天想试试缓存PHP文件,结果调试半天无果,无法被缓存:

CONFIG proxy.config.http.cache.ignore_client_no_cache INT 1
CONFIG proxy.config.http.cache.ims_on_client_no_cache INT 0
CONFIG proxy.config.http.cache.ignore_server_no_cache INT 1
CONFIG proxy.config.http.cache.ignore_client_cc_max_age INT 1
CONFIG proxy.config.http.cache.cache_urls_that_look_dynamic INT 1

无果;然后在cache.config中加了php强制缓存条目:

dest_domain=. suffix=php       pin-in-cache=600s

仍然无果

[05/Jan/2013:10:56:28 +0800] 0 192.168.1.5 TCP_IMS_HIT/304 181 GET http://user.test.cn/images/mail.gif - NONE - -
[05/Jan/2013:10:56:28 +0800] 62 192.168.1.5 TCP_MISS/200 1074 GET http://user.test.cn/code.php - DIRECT image/png -
[05/Jan/2013:10:56:30 +0800] 0 192.168.1.5 TCP_IMS_HIT/304 182 GET http://user.test.cn/style.css - NONE - -
[05/Jan/2013:10:56:30 +0800] 0 192.168.1.5 TCP_IMS_HIT/304 183 GET http://user.test.cn/reg_style.css - NONE - -
[05/Jan/2013:10:56:30 +0800] 91 192.168.1.5 TCP_MISS/200 13354 GET http://user.test.cn/reg.php - DIRECT text/html -
[05/Jan/2013:10:56:30 +0800] 0 192.168.1.5 TCP_IMS_HIT/304 181 GET http://user.test.cn/images/mail.gif - NONE - -
[05/Jan/2013:10:56:30 +0800] 60 192.168.1.5 TCP_MISS/200 1070 GET http://user.test.cn/code.php - DIRECT image/png -

论坛徽章:
0
2 [报告]
发表于 2013-01-05 13:16 |只看该作者
折腾明白了一点:

对于缓存PHP这类的动态文件,PHP文件中必须有控制缓存的代码(如:Cache-Control/Last-Modified等)才能被认为可缓存,否则默认的是Cache-Control:no-cache

奇怪的是,ATS明明是已经定义了忽略服务器端no-cache了啊!?

论坛徽章:
0
3 [报告]
发表于 2013-01-08 18:09 |只看该作者
如果需要松散的cache机制,修改records.config中的:
   # required headers: three options:
   #   0 - No required headers to make document cachable
   #   1 - "Last-Modified:", "Expires:", or "Cache-Control: max-age" required
   #   2 - explicit lifetime required, "Expires:" or "Cache-Control: max-age"
CONFIG proxy.config.http.cache.required_headers INT 2

这个选项默认是2,即源返回头里必须有Expires或max-age,否则不存

论坛徽章:
0
4 [报告]
发表于 2013-01-08 18:32 |只看该作者
aaaaaa 发表于 2013-01-08 18:09
如果需要松散的cache机制,修改records.config中的:
   # required headers: three options:
   #   0 - ...



我选的是0,即不需要header啊:

CONFIG proxy.config.http.cache.required_headers INT 0

论坛徽章:
0
5 [报告]
发表于 2013-01-08 23:07 |只看该作者
dump一份返回头出来看看,或者启用TS的debug,打印出一个完整的miss流程,你会看到为啥的,改
proxy.config.diags.debug.enabled
为1就好

论坛徽章:
0
6 [报告]
发表于 2013-01-09 18:50 |只看该作者
回复 1# llzqq


    试试 ttl-in-cache ,这个不会遵循 Cache-Control, pin-in-cache 会。

http://trafficserver.apache.org/ ... orcingObjectCaching

论坛徽章:
0
7 [报告]
发表于 2013-01-10 09:54 |只看该作者
回复 6# atser

谢谢各位,不折腾了,还是老老实实地在PHP页面加上缓存控制,这样也更合理了。


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP