如何設定 nginx 接受 gzip 請求?

如何設定 nginx 接受 gzip 請求?

我知道你可以使用nginx HttpGzip模組到 gzip回應。你也可以用它來讓 nginx 處理 gzip 壓縮嗎要求,即有請求標頭的:Content-Encoding: gzip

注意:Apache 在 的幫助下mod_deflate可以使用指令處理 gzip 壓縮請求SetInputFilter DEFLATE

有關的

http://forum.nginx.org/read.php?11,96472,214266

答案1

我剛剛在 Apache 後端前面的 nginx 伺服器上嘗試過這個。

curl -H "Content-Encoding: gzip" --include -d @testfile.gz http://example.com/upload_file.php

自動添加curl:

Expect: 100-continue

到請求標頭。

nginx 發回了一個

HTTP/1.1 100 Continue

回應和curl 隨後發送gzip 壓縮的資料。 nginx 將全部資料傳回 Apache,仍然是壓縮的且Content-Encoding:標頭仍然完好無損。

如果我沒有Content-Encoding: gzip使用curl 新增標頭,我就不會收到 HTTP 100 回應,但其他一切都是一樣的。

這還沒有回答你的問題,但它確實意味著 nginx 要么默認不處理這個問題,要么在代理時不解壓縮請求的正文。我對這個問題的答案很感興趣,所以稍後我會看看是否可以在非代理 nginx 伺服器上嘗試。

想必您可以透過使用 mod_deflate 將這些請求代理到 Apache 後端來解決頻寬問題,但這忽略了您首先選擇 nginx 的原因。

答案2

剛剛找到這篇文章:如何讓 Nginx 解壓縮 gzip 請求

看起來不錯,但我還沒有嘗試過。希望能幫助你。

答案3

我在數位海洋上找到了很好的步驟烏班圖14.04

很好

相關內容