我们正在举办一个主要的网球锦标赛网站,并试图在Rackspace上使用Varnish来帮助我们预期的流量。我们聘请了太多系统顾问帮助在我们的云服务器上安装Varnish,但无论出于何种原因,他们都无法使用Varnish来处理我们的脚本。一个典型的脚本可以在这里找到:
162.242.140.232/scoring/DemoGetOOP.php
这个脚本没有什么特别之处。它在标头中没有任何特殊的缓存命令,也不使用会话控制。您可以通过我们用于测试目的的底部的日期/时间来查看该页面未被缓存。我们设置了一个缓存的计时器页面:
162.242.140.232/scoring/timer.php
还有一个info.php页面:
162.242.140.232/scoring/info.php
奇怪的是,如果你第一次去timer.php,你可以看到它被缓存了10秒钟。但是,如果您随后运行我们的DemoGetOOP.php脚本并返回到timer.php,它就不再被缓存了。我们必须再次清除缓存或打开一个私有浏览器窗口来查看缓存。
if(req.url~“^ / scoring / DemoGetOOP.php”)和
if(req.url~“/scoring/DemoGetOOP.php”)
任何帮助将不胜感激!
答案 0 :(得分:1)
首先,我将从设置正确的缓存标头开始,我更喜欢Cache-Control标头。 DemoGetOOP脚本还发送一个cookie,Varnish将通过缓存。
我建议检查一下varnishlog,它会让你清楚地了解Varnish决定缓存的原因。
答案 1 :(得分:0)
它们似乎对我很好,第一个链接的ttl为120秒,第二个链接的ttl为10秒,两者都工作正常。
我会说,当事情似乎不起作用时,请务必仔细检查一下。