1

gzip形式で保存されたhtmlファイルがあります。ブラウザーには html ファイルが表示されますが、javascript と CSS は表示されません。同じディレクトリにある圧縮されていない html ファイルは正しく表示されます。さらに、圧縮された html ファイルからソースを保存したところ、JS と CSS が適用された状態で正しく再オープンされました。

JS と CSS を取得できない圧縮された html を表示することの違いは何ですか?

4

2 に答える 2

3

基本的な問題は、ブラウザーが CSS を想定している場所で gzip ファイルを提供できないことです。それ自体では、JPEG やハム サンドイッチを返す場合と同様に機能しません。

コンテンツがオンザフライで圧縮されると、応答は多少異なります。応答は、「私は text/css ですが、たまたま転送用に gzip でエンコードされています」と表示されます。ブラウザはそれを理解できます。

Apache などの一部の Web サーバーは、ローカルで gzip 圧縮されたファイルを提供すると、そのようなことを行います。しかし、あなたのサーバーはそうではないと思います。

HTMLで機能するのはなぜですか?うーん、わかりませんが、おそらくあなたのブラウザは実際にその特定のケースでそれを理解することができますか?

最終的にやりたいことは、応答を Content-Type: text/css および Content-Encoding: gzip で提供して、正しく認識させることです。

于 2009-05-15T00:46:11.777 に答える