我遵循的教程完美服务器 – Ubuntu 11.10 [ISPConfig 3]在这里。 我正在Rackspace上运行带有1024 RAM的Ubuntu 11.04(Natty Narwhal)服务器。 我已经完成并更新到ISPConfig 3.0.4。 当我决定尝试安装清漆时,一切都一直很好。 起初,我通过发布以下方式安装了Varnish:
apt-get update apt-get upgrade apt-get install varnish
显然,安装的版本是Varnish 2.x,所以我回去添加了由varnish-cache.org提供的软件包的存储库
curl http://repo.varnish-cache.org/debian/GPG-key.txt | apt-key add - echo "deb http://repo.varnish-cache.org/ubuntu/ lucid varnish-3.0" >> /etc/apt/sources.list apt-get update apt-get install varnish
这更新了我的Varnish版本到3.0.2
然后我进行了以下更改:
vim /etc/default/varnish change DAEMON_OPTS to port 80: vim /etc/apache2/ports.conf NameVirtualHost *:8000 Listen 8000 vim /etc/apache2/sites-available/default <VirtualHost *:8000> vim /etc/apache2/sites-available/ispconfig.vhost Listen 8080 NameVirtualHost *:8080 <VirtualHost _default_:8080>
然后我继续设置我的其他虚拟主机使用8000(apache2端口)
所有这一切,我重置Apache2和光油testing。 我在Firefox 11.0中使用了Firebug
我所看到的结果似乎并没有表明清漆的工作是完全正确的:

首先我看到:X-Varnish 1644834493,但我听说,除非你有两个时间戳并排比它可能无法正常工作,所以例如,我想我可能会看到像这样的东西:
X-Varnish 1644834493 1644837493
另外,如果我注意到在这似乎是不稳定的输出:
X-DrupalcachingMISS
有时候会说HIT。
所以这里的问题是,我认为Varnish是部分工作,但是,为什么我不看到X-Varnish上的两个时间戳,就像我正在考虑的那样,并且截图的输出看起来是正确的呢? 如果油漆不工作,有人可以告诉我我可能做错了什么?
提前致谢。
关于X-Varnish头:第一个ID是一个内部请求ID,所以这应该每次都改变。 如果有第二个值,比Varnish提供了一个caching的对象。 第二个ID是此对象的内部cachingID。
关于你的假设你是对的,那Varnish还没有提供caching的内容。 你可以额外检查Age标题,告诉我们内容是0秒(所以它是新鲜的)。 响应的最大允许时限在Cache-Control头中设置:180秒。 这不是很长,但足以进行进一步的testing。
请检查响应标题以进行以下操作(注意在浏览器中启用caching – 对于Firefox,您可以通过Web开发栏启用/禁用它):
浏览器处理两种不同的内容获取方式(详细信息请查看您的请求标题)。 通过按下重新加载button(或通过Web开发栏禁用caching),浏览器发送caching控制标题,以强制传送新鲜内容和清漆。 通过再次加载相同的URL(例如,点击链接,使用向前和向后的button,在浏览器地址栏中按回车…),您的浏览器不会发送这些Cache-Control头,Varnish能够提供caching的内容。
如果您想要caching该行为,并且希望强制使用caching内容,则可以优化清漆的configuration。 但这是另一回事。
关于你的X-Drupal-Cache头文件:这个头文件是由后端Varnish使用的。 这告诉你,Varnish已经使用新鲜的内容来caching或响应。