何らかの理由で、非 IE ブラウザーは、サーバー側のリダイレクトが (Location ヘッダーを使用して) 送信されたときに、URL ハッシュ (存在する場合) を保持しているようです。例:
// a simple redirect using Response.Redirect("http://www.yahoo.com");
Text.aspx
私が訪問した場合:
Test.aspx#foo
Firefox/Chrome では、次のように表示されます。
http://www.yahoo.com#foo
なぜこれが起こるのか誰か説明できますか?さまざまなプラットフォームでもさまざまなサーバー側のリダイレクトでこれを試しましたが(ただし、すべて Location ヘッダーになります)、これは常に発生するようです。HTTP 仕様のどこにも表示されませんが、実際にはブラウザー自体に問題があるようです。URL ハッシュ (予想どおり) はサーバーに送信されないため、サーバーのリダイレクトはそれによって汚染されず、ブラウザーは何らかの理由でそれを保持しているだけです。
何か案は?