如何设置Varnish,使其不会caching特定的URL与查询string?

服务器设置:Ubuntu 12.10,Varnish 3.0.2,Nginx 1.3.14,安装WordPress 3.5.1。

我们使用“随机redirect”插件,在http://example.com/?random上显示随机博客文章

我想设置Varnish不caching上面的URL,因为目前“随机”的post不断显示相同的职位。

显示在default.vcl中放置什么内容的特定片段将会非常有帮助。 谢谢。

把下面的块放在vcl_recv应该这样做:

 if ( req.url ~ "^/\?random" ) { return (pass); } 

当您return(pass) ,您将跳过机会在caching中查找请求。

默认的行为是做一堆testing,看是否有可能的内容是dynamic的(是否设置cookie,是否需要身份validation,是否是一个POST请求,类似的东西) – 如果没有这些条件是遇见,清漆回落return(lookup)