壓縮回應主體
壓縮回應主體以節省頻寬是一種常見做法。為了減輕您的負擔,我們將功能直接建置到 Deploy 中。
Deno Deploy 支援 brotli 和 gzip 壓縮。在符合下列條件時套用壓縮。
- 對您部署的請求已將
Accept-Encoding
標頭設定為br
(brotli) 或gzip
。 - 您部署的回應包含
Content-Type
標頭。 - 所提供的內容類型可壓縮;我們使用 此資料庫 來判斷內容類型是否可壓縮。
- 回應主體大小大於 20 位元組。
當 Deploy 壓縮回應主體時,它會根據所使用的壓縮演算法,將 Content-Encoding: gzip
或 Content-Encoding: br
標頭設定到回應。
何時會略過壓縮?
如果回應有下列情況,Deno Deploy 會略過壓縮
- 回應有
Content-Encoding
標頭。 - 回應有
Content-Range
標頭。 - 回應的
Cache-Control
標頭有no-transform
值(例如cache-control: public, no-transform
)。
我的 Etag
標頭會發生什麼事?
當您使用回應設定 Etag 標頭時,如果我們對您的回應主體套用壓縮,我們會將標頭值轉換為弱 Etag。如果它已經是弱 Etag,我們不會變更標頭。