2017-07-29 24 views
0

我尝试用下面的代码行default.vcl排除robots.txt的形式清漆缓存无法从清漆缓存排除robot.txt的

if(req.url ~ "^/robots\.txt$") { 
    return(pass); 
} 
在开发工具

现在网络选项卡,它显示了一个时代:0和X-Cache:MISS。但是,由于某种原因,清漆不会排除文件被缓存。我甚至从它的位置删除了该文件。但仍然是其加载的URL https://www.example.com/robots.txt

我也使用下面的命令

curl -X PURGE www.example.com/robots.txt 

varnishadm "ban req.http.host == www.example.com && req.url ~ ^/robots.txt" 

varnishadm "ban req.http.host ~ www.example.com && req.url ~ ^/robots.txt" 

它显示了200吹扫消息净化清漆缓存,但仍然没有运气。

任何人都可以帮我吗?

+0

如果Age为0并且它是MISS,则不清楚“被排除在缓存之外”的意思,因为它看起来正是发生了什么。 –

回答

0
  1. “我甚至删除其位置的文件,但仍然是其装载的URL https://www.example.com/robots.txt。” - 可能是您的浏览器缓存它。
  2. 发送PURGE请求清除只会从缓存中删除对象,而不是从后端,所以如果你从清漆中清除某些东西然后发送一个GET请求给它,它肯定会向你提供对象。
  3. 如果您希望它永远丢失,您需要将其从后端删除。