HTTP モジュールを使用してリクエストを圧縮します。これが私の実装です。
void context_Begin(object sender, EventArgs e)
{
HttpApplication app = (HttpApplication)sender;
string encoding = app.Request.Headers.Get("Accept-Encoding");
if (encoding == null)
return;
Stream baseStream = app.Response.Filter;
if (encoding.Contains("gzip"))
{
app.Response.Filter = new GZipStream(baseStream, CompressionMode.Compress);
app.Response.AppendHeader("Content-Encoding", "gzip");
}
else if (encoding.Contains("deflate"))
{
app.Response.Filter = new DeflateStream(baseStream, CompressionMode.Compress);
app.Response.AppendHeader("Content-Encoding", "deflate");
}
}
したがって、すべてがまったく問題ありません。メインの URL での奇妙な動作です。
すべてのページはメイン URL を除いて完全に機能しました。私のメイン URL は www.mynewsite.com です。HTTP モジュールを無効にするとすべて問題ありませんが、有効にするとメイン URL で 404 エラーが発生します。リソースが見つかりません。
理解できない?このページとリクエスト圧縮の関係は何ですか?
誰でもこれについて何か考えがありますか?なにか提案を?