Configuration
添加主機名作為自定義清漆標題
我有幾個清漆記憶體伺服器(v2.1),我希望在清漆響應的標題中添加主機名——所以我知道哪個伺服器正在(或不)提供記憶體頁面。Google搜尋後,我發現了這個片段,但它給出了錯誤:
sub vcl_deliver { if (obj.hits > 0) { set resp.http.X-MH-Cache ="HIT " obj.hits " "* server.hostname* " " resp.http.Age; } else { set resp.http.X-MH-Cache ="MISS " *server.hostname* "" } }
我並不依賴於這個片段本身。理想情況下,我想在未命中或命中時設置主機名。
我對 vcl 文件相當陌生,因此非常感謝任何指導和幫助。非常感謝!
公里
偶然發現了這一點(不總是這樣嗎?):https ://www.varnish-cache.org/trac/wiki/VCLExampleHitMissHeader——正是我想要的。
錯誤更可能是由於星號,並且在建構“ X-MH-Cache響應標頭時缺少加號:
Unknown token '*' when looking for STRING
工作的 vcl 程式碼片段如下所示:
vcl 4.1; import std; sub vcl_deliver { if (obj.hits > 0) { set resp.http.X-MH-Cache = "HIT: " + obj.hits + " *" + server.hostname + "* Age: " + resp.http.Age; } else { set resp.http.X-MH-Cache = "MISS *" + server.hostname + "*"; } }
答案(2012 年 1 月 27 日)的 URL 的快照(2012 年 1 月 2 日)可在此處的 Internet 存檔站點上找到: https ://web.archive.org/web/20120309095329/https://www .varnish-cache.org/trac/wiki/VCLExampleHitMissHeader