IIS7のカスタムリダイレクトは、メジスタ化されたシェアヘッダーの場合に合格しません。バグ?
-
13-10-2019 - |
質問
次の手法を使用して、存在しないすべてのURLをキャッチし、結果として生じるページを提供します。
<handlers>
<add name="Foo" path="foo.aspx" verb="*" type="Foo.UrlHandler" preCondition="integratedMode,runtimeVersionv2.0"/>
</handlers>
<httpErrors errorMode="Custom">
<remove statusCode="404"/>
<remove statusCode="405"/>
<error statusCode="404" path="/foo.aspx" responseMode="ExecuteURL"/>
<error statusCode="405" path="/foo.aspx" responseMode="ExecuteURL"/>
</httpErrors>
ただし、どのリクエストヘッダーがに渡されているかを確認すると UrlHandler
, 、私は1つを除くすべてを見ます:ifmodified-sibeのヘッダーは渡されません。私は他のすべてを見ます(キャッシュ制御、受け入れなど)。
これで何か経験がありましたか?この質問に関連しています。
IIS7の404 + httphandlerへのフォームの投稿:なぜすべての投稿データが欠落したのですか?
アップデート: : 私は一人じゃない - http://www.webmasterworld.com/microsoft_asp_net/3935439.htm
解決
解決した。誰かが同じ問題を抱えている場合に備えて:
プロジェクトを.NET MVCに変更しました(2ですが、1-3はすべて正常に行われるはずです)。キャッチオールへの単一のルートを作成しました:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute("All", "{*url}", new { controller = "CatchAll", action = "Index" });
}
次に、私のHTTPhandlerがかつて行ったように、単一のCatchallコントローラーを追加しました。
所属していません StackOverflow