を活性化した後、私はこのように、私のウェブサイト上で圧縮を有効に:奇妙な効果が昨日圧縮
void context_BeginRequest(object sender, EventArgs e)
{
HttpApplication app = (HttpApplication)sender;
string encodings = app.Request.Headers.Get("Accept-Encoding");
if (encodings == null)
return;
string url = app.Request.RawUrl.ToLower();
if (url.Contains(".js") || url.Contains(".aspx") || url.Contains(".css") || url.Contains("ajax.ashx"))
{
Stream baseStream = app.Response.Filter;
encodings = encodings.ToLower();
if (encodings.Contains("gzip"))
{
app.Response.Filter = new GZipStream(baseStream, CompressionMode.Compress);
app.Response.AppendHeader("Content-Encoding", "gzip");
}
else if (encodings.Contains("deflate"))
{
app.Response.Filter = new DeflateStream(baseStream, CompressionMode.Compress);
app.Response.AppendHeader("Content-Encoding", "deflate");
}
}
}
昨夜、人々が破壊されるウェブサイトのスタイル不満ました。 FirefoxとChromeでサイトを試してみましたが、キャッシュをクリアしてから強制的にリフレッシュするまで同じ問題が発生しました。
今朝、私はSafariを開いて、そのブラウザでどのように見えるかを確認し、格納されているスタイルシートを確認しました。ここではトップラインのセクションです:
���`I�%&/m�{J�J��t��`$ؐ@�������iG#)�*��eVe][email protected]�흼��{����{����;�N'���?\fdl��J�ɞ!���?~|?"�~+M�m�?��{�7y����l]�餮���N���̛�x�Ϋ�Q�cMVg��
私はどちらかのSafariで始まるように圧縮されなかったものを解凍しようとしたか、あるいはそれが圧縮されたファイルを受け取って、それを復号していないと思います。
私のサイトの訪問者がキャッシュをクリアするとすぐにクリアされるか、HttpCompression関数を記述するのに間違いがありますか?
あなただけさせてはいけない理由がある[IISはこれを行う](http://support.microsoft.com/kb/322603)あなたのために? –
@ Mr.Disappointment私の前にサイトを開発していた人は、このようにしていました(彼はajax.ashxへの応答でのみ圧縮を有効にしていました)。それはうまくいくようです。 – Oliver