2017-07-29 55 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. 如果您希望它永遠丟失,您需要將其從後端刪除。