nginx HttpGzipModuleを使用して応答をgzip できることを知っています。これを使用して、nginxがgzipで圧縮されたリクエスト、つまりリクエストヘッダーを持つリクエストを処理できるようにすることができますContent-Encoding: gzip
か?
注:Apacheはmod_deflate
、ディレクティブを使用してgzipで圧縮されたリクエストを処理できますSetInputFilter DEFLATE
。
nginx HttpGzipModuleを使用して応答をgzip できることを知っています。これを使用して、nginxがgzipで圧縮されたリクエスト、つまりリクエストヘッダーを持つリクエストを処理できるようにすることができますContent-Encoding: gzip
か?
注:Apacheはmod_deflate
、ディレクティブを使用してgzipで圧縮されたリクエストを処理できますSetInputFilter DEFLATE
。
回答:
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
応答とカールの後にgzip圧縮されたデータを送信します。nginxは、ロット全体をApacheに戻しましたが、まだ圧縮されており、Content-Encoding:
ヘッダーはそのままです。
Content-Encoding: gzip
curl を使用してヘッダーを追加しなかった場合、HTTP 100応答を取得できませんでしたが、他のすべては同じでした。
これはまだあなたの質問に答えていませんが、nginxがデフォルトでこれを処理しないか、リクエストがプロキシされているときにリクエストの本体を解凍しないことを意味します。私はこれに対する答えに興味があるので、プロキシなしのnginxサーバーで少し後で試すことができるかどうかを確認します。
おそらく、mod_deflateを使用してこれらのリクエストをApacheバックエンドにプロキシすることで帯域幅の問題を解決できますが、そもそもnginxを選択した理由は無視されます。
この記事を見つけた:Nginxがgzip圧縮されたリクエストを解凍する方法
それはよさそうですが、私はまだ試していません。それが役に立てば幸い。
Ubuntu 14.04のデジタルオーシャンで良い手順を見つけました
それは良いです