私のelmahログを調べると、「長すぎるURL」リクエストが引き続き受信されています。エラーは次のとおりです。ここでAsp.Net MVC:URLが長すぎてエラー処理が要求されました
System.Web.HttpException (0x80004005): The length of the URL for this request exceeds the configured maxUrlLength value.
at System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)
は私が受け取る要求の一種である:
/index.php/blog/post/the_ten_deceptions_of_the_datetimepicker/+[PLM=0]+GET+http:/www .visualhint.com/index.php/blog/post/the_ten_deceptions_of_the_datetimepicker/+ [0,23778,23037] + - + [N] + POST + http:/www.visualhint.com/index.php/blog/post/ the_ten_deceptions_of_the_datetimepicker/+ [0,0,2007]
(... asp.net MVCサイトされる前に、PHPの事で驚かないでください、私のサイトこれらを生成することがありました何
PHPでいたし、今私は、URLが/index.php/blog/post/the_ten_deceptions_of_the_datetimepickerで停止したときによく働く私の新しいURL形式、古いURLのこの種をリダイレクトする必要があります)
リクエスト?それは悪意のあると思われますか?私はカスタムエラー設定をしていますが、そのようなリクエストは私のカスタムエラーページにリダイレクトされますが、そうではありません。代わりに、人々は典型的な黄色の画面を取得します(これは400 Bad Requestです)。上記のスタックトレースを見ると、非常に短く、非常に早く例外がキャッチされているようです(Application_BeginRequestは呼び出されていません)。このような例外が発生した場合、私のカスタムエラーページを表示することは可能ですか、少なくとも私のホームページにリダイレクトできますか?
私は私のweb.configファイルにエラー400のための行を追加してみました:
<customErrors mode="RemoteOnly">
<error statusCode="400" redirect="/" />
</customErrors>
これはホームページの右側にリダイレクトするが、それはaspxerrorpathクエリ文字列値に完全なURLを追加します。
ありがとうございました。
アドバイスはここに役立ちます:http://stackoverflow.com/questions/1185739/asp-net-mvc-url-routing-maximum-path-url-length –