2014-11-07 110 views
0

我在CDN中部署清漆時遇到問題。 我已經有2個網站,CDN中的緩存問題與清漆

1 in Paris , 
1 in New York . 

Everysite有2個服務器,

1 for varnish cache , 
and 1 for web server . 

我想在客戶端發送請求到服務器在巴黎,如果Web服務器不具有內容的響應,清漆在巴黎將發送請求紐約的服務器提取內容並將其緩存在巴黎的Varnish中。

我能否在不修改清漆源代碼的情況下做到這一點? ... 如果有人有文件這可以幫助我解決這個問題,請發送電子郵件給我:[email protected]或Skype:nohungry381。謝謝

回答

0

在VCL中,您可以設置一個故障切換邏輯,它在404上觸發並將後端切換到另一個Web服務器。

backend default { 
    .host   = "192.168.50.50"; 
    .port   = "80"; 
} 

backend backup { 
    .host   = "192.168.50.46"; 
    .port   = "80"; 
} 

sub vcl_fetch { 

[...] 

    ### Fail over to backup ### 
    if(beresp.status == 404 && req.backend != backup) { 
      set req.backend = backup; 
      return(restart); 
     } 

[...] 

源:https://www.varnish-cache.org/forum/topic/195