2012-10-17 30 views
1

Varnish將在Cache中保存壓縮的obj,但是當客戶端不支持gzip時。Varnish 3.0如何處理gzip?

Varnish如何處理它?它是否也在緩存中保存另一個未壓縮的obj,或解壓縮壓縮的obj?

回答

8

Varnish 3.0支持正式教程的"Compression"一章中提到的Gzip。所有到後端的HTTP請求都會包含對壓縮內容的請求,因此默認情況下所有對象都將被存儲在gzip內存中。

如果後端不支持gzip,可以通過在vcl_fetch中設置beresp.do_gzip來要求Varnish在存儲之前壓縮響應。

如果來自不支持gzip的客戶端發出請求,Varnish將在傳送之前對存儲的對象進行gunzip處理。

-1

Varnish 2.x不壓縮或解壓縮:如果客戶端支持Gzip,則它將在緩存中保存gzip版本的頁面。如果客戶端不支持它,另一個副本將被放置在緩存中用於普通內容,而不進行壓縮。

所以是的:依賴於Accept-Encoding頭(應該規範化),一個頁面的多個版本將被保存在每個支持的壓縮算法的緩存中。

*更新:爲了清晰起見進行編輯,以上僅適用於Varnish 2.0或2.1。如上所述,Varnish 3.x支持gzip。

+0

Varnish 3.0具有對壓縮的本機支持,而不是舊版本。有關詳細信息,請參閱@ lkarsten答案中的教程鏈接。 –

相關問題