squid 缓存动态连接
2010年8月27日
9 条评论
由于网站的访问量越来越大,用户播放视频,都要从web服务器拿文件,而且又是动态连接,要调用一个php-cgi进程,这样的话很浪费资源,所以要加缓存服务器。但是问题来了,squid 默认是不缓存动态页面的,google 了半天,发现很多人的文章没有一个说到正点上的。最后自己不停的做测试,看squid.conf.documented,把问题解决了,所以就记录下来,以便以后大家遇到同样的问题。好解决。
列子:
http://www.nginxs.com/nginx/Grec.php?id=eric&b.php?=aaa
首选用 curl 抓 head头。
nginx $> curl -I http://www.nginxs.com/nginx/Grec.php HTTP/1.1 200 OK Server: nginx Date: Fri, 27 Aug 2010 06:49:43 GMT Content-Type: text/html; charset=utf-8 Connection: keep-alive Vary: Accept-Encoding X-Powered-By: PHP/5.2.13 Set-Cookie: PHPSESSID=2d4523a7c6a5a54dbb20f64f3bc04be3; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache
看红字部分,然后在看 squid.conf.documented 对应的部分
# options: override-expire # override-lastmod # reload-into-ims # ignore-reload # ignore-no-cache # ignore-no-store # ignore-must-revalidate # ignore-private # ignore-auth # refresh-ims #
把 Cache-Control 的信息,squid对应有违规则 那么我们修改 squid.conf
近期评论