これはSOに属しているかどうかは完全にはわかりませんが、Windows 8は、圧縮されたHTTP応答からコンテンツエンコーディングヘッダーを削除しているようです。
ウェブアプリケーションの読み込み速度を調べているうちに、明らかにHTTPレスポンス(html、css、jsのどのタイプでも)が圧縮されていないことがわかりました。つまり、「Content-Encoding:gzip」のようなレスポンスヘッダーはどのリクエストにも存在せず、ブラウザはリソースが圧縮されていないと報告します。
- は、テストの結果、複数のブラウザで確認(IE10、FF 17、クロム23、オペラ12.10、サファリ5.xの)
- テストし、Windows 8を実行している2台のマシン上で確認したプロ
- ダブルフィドラーで確認します - 応答は
- (ブラウザに応じて)圧縮されていないと、コンテンツエンコードヘッダ これは私のWebアプリケーションのために発生しません
- 、私は圧縮された応答を送信するように見えるがテストなし他のウェブサイトが含まれていませんWindows 7での応答圧縮された到着し、すべてのヘッダ
- が
を圧縮さHTTPS応答を持つ。ここで(コンテンツコードヘッダの欠如に注意)応答ヘッダーの例は次のとおり
私もチェックサーバ側。サーバーでWindows Server 2008 R2/IIS 7.5が実行されています。私は失敗した要求トレースを使用して、サーバーが何を送信しているかを調べました。リソースを圧縮する表示されます。
また、サーバが適切なヘッダを送信するようだ:
私の結論:それはここに介在されているWindows 8でなければなりません。明らかに、HTTPレスポンスを変更します。私は、Windows 8が圧縮された応答を受け取り、解凍し、コンテンツエンコーディングヘッダーを削除し、変更された応答をパイプラインのさらに下に渡すと仮定します。
今私の質問:
- は誰には、Windows 8は、HTTPレスポンスを変更し、それは私が説明したように動作することを確認することができますか?
- この動作を監視する、または無効にする方法はありますか?
ご回答いただきありがとうございます。
よろしく、 アンドレ
アップデート: 私は、クライアントに到着したものを見るためにWiresharkのを使用。私は、リソースが圧縮され、コンテンツエンコーディングヘッダがまだ存在することを期待していました。下の画像はwiresharkプロトコルを示し、右下にはChromeで受信したレスポンスが表示されています。
これは、Windows 8が介在していることを私の仮定を確認します。
Wiresharkでクライアントのネットワークレベルでチェックしましたか?多分それはあなたのISPです。 –
ネットワークにプロキシサーバーまたはファンシールーターがありますか?それは、データを検査して解凍した応答をあなたに送るためにデータを解凍するかもしれません。 – CodeCaster
私はWindows 8とWindows 7のマシンを全く同じネットワーク上でテストしました。同じインターネットプロバイダと同じネットワークインフラストラクチャを提供します。私はwiresharkでネットワークのトラフィックを掘り下げ、私が何を見つけることができるかを見てみよう。 –