0

目前我正在使用 UrlRewritingNet.UrlRewrite dll 在 Asp.Net #3.5 中进行 URL 重写。

在不使用任何特殊字符的情况下,它可以正常工作。网址 1。但是在 URL 中给出特殊字符后,它会抛出错误请求错误。网址2

URL1:http ://www.example.com/search/0253

URL2:http ://www.example.com/search/0253:0253

要处理此错误,我想将其重定向到其他错误页面,我该怎么做?

4

2 回答 2

0

在 IIS 7+ 上,您可以为 400 Bad Request 定义所有状态的错误页面:

<httpErrors>
  <error statusCode="400" path="/bad-request.aspx" prefixLanguageFilePath="" responseMode="ExecuteURL"/>
</httpErrors>

或通过 IIS 控制台转到错误页面并为状态代码 400 添加自定义错误页面:

在此处输入图像描述

于 2013-07-17T12:25:23.223 回答
0

最好的方法是使用Web.config类似的文件

<system.web>
    <!-- other system.web stuff -->
    <customErrors defaultRedirect="/Error404.aspx" mode="On" redirectMode="ResponseRewrite">
        <error redirect="/Error404.aspx" statusCode="404" />
    </customErrors>
</system.web>
<system.webServer>
    <!-- other system.webServer stuff -->
    <httpErrors errorMode="Custom">
        <remove statusCode="404" subStatusCode="-1" />
        <error statusCode="404" prefixLanguageFilePath="" path="/Error404.aspx" responseMode="ExecuteURL" />
    </httpErrors>
</system.webServer>

更多详情请点击这里

于 2013-07-17T12:27:13.450 回答