404错误不会转到自定义页面

时间:2015-07-29 12:36:46

标签: azure-web-sites

提前感谢您的回复。 简单的Azure ASP.net 4.5 Web表单网站。

我正在处理Global.asax中的自定义错误。当网址的中间部分发生变化时,网页缺失会起作用。但是,如果结束了。它说404错误,当部署到Azure时,它表示单行"资源缺失" 我认为这是Web服务器问题,如果我的huntch是正确的,我该怎么做 a)在VS 2013中的IIS Express上修复此问题 b)在部署到Azure网站时修复此问题 干杯,Thnx&祝一切顺利 KFC

1 个答案:

答案 0 :(得分:1)

首先,我有点在黑暗中射击。你可以发布你的Web.config中的httpErrorscustomErrors节点,以及你在Global.asax中使用的错误处理代码吗?

也就是说,Global.asax不是处理自定义错误页面的好地方。您可以使用Web.config中的httpErrors节点来使IIS(7 +,Azure很好)捕获错误并重定向。这使您可以从内部捕获错误(例如应用程序异常)(例如请求验证失败,缺少静态文件)您的应用程序: -

<httpErrors errorMode="Custom" existingResponse="Replace">
  <clear />
  <error statusCode="400" responseMode="ExecuteURL" path="/Error" />
  <error statusCode="403" responseMode="ExecuteURL" path="/Error/Forbidden" />
  <error statusCode="404" responseMode="ExecuteURL" path="/Error/NotFound" />
  <error statusCode="500" responseMode="ExecuteURL" path="/Error" />
</httpErrors>

完全删除customErrors节点。没必要。

我放了full working example of using httpErrors for custom error pages up on github。您还可以see it live on azure web sites