2012-11-22 4 views
12

これは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応答を持つ。ここで(コンテンツコードヘッダの欠如に注意)応答ヘッダーの例は次のとおり response headers on client machine

私もチェックサーバ側。サーバーでWindows Server 2008 R2/IIS 7.5が実行されています。私は失敗した要求トレースを使用して、サーバーが何を送信しているかを調べました。リソースを圧縮する表示されます。

server side compression

また、サーバが適切なヘッダを送信するようだ:

compression headers

私の結論:それはここに介在されているWindows 8でなければなりません。明らかに、HTTPレスポンスを変更します。私は、Windows 8が圧縮された応答を受け取り、解凍し、コンテンツエンコーディングヘッダーを削除し、変更された応答をパイプラインのさらに下に渡すと仮定します。

今私の質問:

  • は誰には、Windows 8は、HTTPレスポンスを変更し、それは私が説明したように動作することを確認することができますか?
  • この動作を監視する、または無効にする方法はありますか?

ご回答いただきありがとうございます。

よろしく、 アンドレ


アップデート: 私は、クライアントに到着したものを見るためにWiresharkのを使用。私は、リソースが圧縮され、コンテンツエンコーディングヘッダがまだ存在することを期待していました。下の画像はwiresharkプロトコルを示し、右下にはChromeで受信したレスポンスが表示されています。

wireshark

これは、Windows 8が介在していることを私の仮定を確認します。

+0

Wiresharkでクライアントのネットワークレベルでチェックしましたか?多分それはあなたのISPです。 –

+0

ネットワークにプロキシサーバーまたはファンシールーターがありますか?それは、データを検査して解凍した応答をあなたに送るためにデータを解凍するかもしれません。 – CodeCaster

+1

私はWindows 8とWindows 7のマシンを全く同じネットワーク上でテストしました。同じインターネットプロバイダと同じネットワークインフラストラクチャを提供します。私はwiresharkでネットワークのトラフィックを掘り下げ、私が何を見つけることができるかを見てみよう。 –

答えて

9

原因は私のウイルス対策ソフトウェア、Avast、より具体的には統合リアルタイムネットワークシールドであることが判明しました。オフにすると、レスポンスがブラウザで再び圧縮されたように見えます。

興味深いのは、Windows 7マシンでもAvastが動作していたことです。ただし、テスト中に該当する場所で圧縮されたマシンに応答していました。

+1

私は同じ問題があります。しかし、ウイルス対策ソフトウェアをオフにしてもブラウザはまだ圧縮されていないようです – Light

+0

同じことが私にも起こっています。私はMicrosoftのWindows DefenderやMicrosoftのいずれかが "セキュリティアップデート"私のAVソフトウェアを疑う前に。そして、はい、私はAVを無効にし、問題はまだ存在します。 – jerhewet

関連する問題