相关疑难解决方法(0)

IIS7上托管的ASP.NET应用程序忽略了自定义错误并回退到IIS错误

我有一个C#Web表单ASP.NET 4.0 Web应用程序使用Routing for URL由于某种原因我的web.config的system.web部分中定义的自定义错误被完全忽略,它将回退IIS错误.

这完全被忽略了

  <system.web>
    <customErrors mode="On">
      <error statusCode="500" redirect="~/Error" />
      <error statusCode="404" redirect="~/404" />
      <error statusCode="403" redirect="~/Error" />
    </customErrors>
  </system.web>
Run Code Online (Sandbox Code Playgroud)

这部分接管了

  <system.webServer>
    <httpErrors>
      <!--<clear />-->
      <remove statusCode="500" subStatusCode="-1" />
      <remove statusCode="404" subStatusCode="-1" />
      <error statusCode="404" subStatusCode="-1" path="/App1/404" responseMode="Redirect" />
      <error statusCode="500" prefixLanguageFilePath="" path="/App1/Error" responseMode="Redirect" />
    </httpErrors>
  </system.webServer>
Run Code Online (Sandbox Code Playgroud)

这将是一个小小的不便,除了它回退到IIS本机而不是我的应用程序它完全绕过Elmah正确记录我的404异常.

编辑:只是为了避免任何这样的建议我只在customErrors停止工作后添加了httpErrors配置,所以我会有任何东西.

asp.net routing iis-7 custom-errors

12
推荐指数
2
解决办法
7098
查看次数

HttpError不会显示自定义错误页面

我在web.config中有这个:

<httpErrors errorMode="Custom">
  <remove statusCode="404" subStatusCode="-1" />
  <remove statusCode="500" subStatusCode="-1" />
  <error statusCode="404" prefixLanguageFilePath="" path="/Error/NotFound.aspx" responseMode="Redirect" />
  <error statusCode="500" prefixLanguageFilePath="" path="/Error/ServerError.aspx" responseMode="Redirect" />
</httpErrors>
Run Code Online (Sandbox Code Playgroud)

但IIS仍显示内置错误页面.

有任何想法吗?

asp.net iis-7

10
推荐指数
3
解决办法
2万
查看次数

标签 统计

asp.net ×2

iis-7 ×2

custom-errors ×1

routing ×1