我希望所有错误都转到同一个错误页面。我最初确实尝试了带有状态码的错误标签。这很好,但我宁愿不必指定任何状态代码,并且仍然让每个错误都转到一页。问题是如果我删除状态码条目,404 会转到服务器的 404 页面,而不是我的错误页面。
有没有办法将所有错误配置到同一页面?
我希望所有错误都转到同一个错误页面。我最初确实尝试了带有状态码的错误标签。这很好,但我宁愿不必指定任何状态代码,并且仍然让每个错误都转到一页。问题是如果我删除状态码条目,404 会转到服务器的 404 页面,而不是我的错误页面。
有没有办法将所有错误配置到同一页面?
您应该更改 web.config 并添加 customErrors 元素。然后,您可以将默认重定向设置为signle页面
例如
<customErrors mode="On" defaultRedirect="Error.aspx">
</customErrors>
可以参考 MSDN 文章 http://msdn.microsoft.com/en-us/library/h0hfz6fc.aspx
在 IIS7 上,您可以使用新的 httpErrors 部分
<system.webServer>
<httpErrors defaultPath="Error.aspx" defaultResponseMode="Redirect">
</httpErrors>
</system.webServer>
更多信息 http://www.iis.net/ConfigReference/system.webServer/httpErrors
如果我理解得很好,您需要将所有错误发送到您的自定义错误页面,以及 iis7 给出的错误(不仅是您的程序)
这是你需要在 II7 上设置的东西,但你也可以从 web.config 设置它(但实际上是给 ii7 说明) 这是一个例子
<configuration>
<system.webServer>
<httpErrors errorMode="DetailedLocalOnly" defaultResponseMode="File" >
<remove statusCode="500" />
<error statusCode="500"
prefixLanguageFilePath="C:\Contoso\Content\errors"
path="500.htm" />
</httpErrors>
</system.webServer>
</configuration>
参考:http ://www.iis.net/ConfigReference/system.webServer/httpErrors