清漆没有caching的权利

我正在尝试configurationvarnish(接下来是: default_varnish3.vcl_.txt )

[alexus@wcmisdlin02 ~]$ rpm -q varnish varnish-3.0.3-1.el5.centos.x86_64 [alexus@wcmisdlin02 ~]$ 

我正在通过浏览器(页面加载正常)进行第一次打击,然后通过在本地计算机上进行curl来再次执行此操作:

 [alexus@wcmisdlin02 ~]$ curl -I alexustest:6081 HTTP/1.1 200 OK Server: Apache/2.2.15 (Red Hat) X-Powered-By: PHP/5.3.3 Cache-Control: public, max-age=1800 Last-Modified: Thu, 11 Apr 2013 19:27:15 +0000 Expires: Sun, 11 Mar 1984 12:00:00 GMT Vary: Cookie,Accept-Encoding Content-Type: text/html; charset=utf-8 Date: Thu, 11 Apr 2013 19:27:16 GMT X-Varnish: 1355259954 Age: 0 Via: 1.1 varnish Connection: keep-alive X-Served-By: wcmisdlin02.uftmasterad.org X-Cache: MISS 

它向我展示了X-Cache: MISS ,当它真的应该是一个HIT(因为这是第二次打),所以我再次(从我的Linux工作站第三次,再次)。

 [alexus@wcmisdlin02 ~]$ curl -I alexustest:6081 HTTP/1.1 200 OK Server: Apache/2.2.15 (Red Hat) X-Powered-By: PHP/5.3.3 Cache-Control: public, max-age=1800 Last-Modified: Thu, 11 Apr 2013 19:27:15 +0000 Expires: Sun, 11 Mar 1984 12:00:00 GMT Vary: Cookie,Accept-Encoding Content-Type: text/html; charset=utf-8 Date: Thu, 11 Apr 2013 19:27:19 GMT X-Varnish: 1355259955 1355259954 Age: 3 Via: 1.1 varnish Connection: keep-alive X-Served-By: wcmisdlin02.uftmasterad.org X-Cache: HIT X-Cache-Hits: 1 [alexus@wcmisdlin02 ~]$ 

现在它是一个HIT,听起来像是每个客户端的caching或什么东西。 正如我所说我使用的是default_varnish3.vcl_.txt ,所以你可以看到我的configuration,我只改变后端信息,以符合我的环境,并添加以下代码(产生HIT / MISS):

 [root@wcmisdlin02 varnish]# cat vcl_deliver/resp.vcl set resp.http.X-Served-By = server.hostname; if (obj.hits > 0) { set resp.http.X-Cache = "HIT"; set resp.http.X-Cache-Hits = obj.hits; } else { set resp.http.X-Cache = "MISS"; } [root@wcmisdlin02 varnish]# 

*更新*

varnishncsa的:

 10.52.208.221 - - [11/Apr/2013:15:45:35 -0400] "HEAD http://alexustest:6081/ HTTP/1.1" 200 0 "-" "curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.13.1.0 zlib/1.2.3 libidn/1.18 libssh2/1.2.2" 10.100.0.35 - - [11/Apr/2013:15:45:38 -0400] "HEAD http://alexustest:6081/ HTTP/1.1" 200 0 "-" "curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8r zlib/1.2.5" 

首先通过我的浏览器(页面加载罚款),然后我再次通过curl

但是,您告诉networkingcaching,您将根据Cookie和内容编码提供不同的结果:

变化:Cookie,接受编码

在第一次请求之前,您是否删除了浏览器中的所有Cookie? 另外你是如何从浏览器发出请求的 – 重新加载的行为与刷新行为有很大不同。

(顺便说一句,如果你要改变你的cookie和你使用会话,那么你应该使你的caching控制提升 – 否则你正在使Varnish努力没有任何好处,事实上,你实际上可以减慢你的网站。