簡體   English   中英

根據自定義標題清漆緩存

[英]Varnish cache according to custom header

我正在使用Varnish服務網站,但需要根據地理位置來進行緩存。 我編寫了一個小的Vmod,它使用Ip2Location設置一個請求標頭,該請求標頭具有國家/地區代碼,然后通過該國家/地區代碼通過Apache傳遞給我的應用程序(Magento),該Apache提供相關內容,但是我還需要Varnish根據國家/地區代碼進行緩存。

有什么辦法可以做到這一點?

我已經排序了。

在vcl_hash子例程中,我需要將國家/地區代碼添加到哈希數據中。

sub vcl_hash {
     hash_data(req.url);
     if (req.http.host) {
         hash_data(req.http.host);
     } else {
         hash_data(server.ip);
     }
     hash_data(req.http.X-Country-Code);

     return (hash);
}

我使用的默認vcl已注釋掉整個vcl_hash子例程,因為它使用的是req.hash而不是hash_data(),后者在Varnish 3中不再可用,因此請進行必要的調整。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM