我是Azure WebSites的新手。希望个性化400系列页面。从我在IIS中理解,这是使用web.config文件配置的。
虽然有很多关于如何配置此文件的很好的支持文档,但它实际上并没有告诉我该文件应该保存在Azure托管平台上的哪个位置。我已经尝试了D:\ home \ site \ wwwroot \ web.config但是只要我放了一些基本配置,如:
<?xml version="1.0"?>
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode="on"/>
<httpErrors>
<remove statusCode="401" subStatusCode="-1" />
<remove statusCode="404" subStatusCode="-1" />
<remove statusCode="500" subStatusCode="-1" />
<error statusCode="401" path="http://foo.com/default.htm" responseMode="Redirect" />
<error statusCode="403" path="/errors/403.htm" responseMode="ExecuteURL" />
<error statusCode="404" path="/somedir/oops404.htm" responseMode="ExecuteURL" />
<error statusCode="500" path="/somedir/500.asp" responseMode="ExecuteURL" />
</httpErrors>
</system.web>
</configuration>
该网站开始返回500(准确地说是503)。
我尝试使用“管理”控制台重新启动实例,但仍然遇到同样的问题。
我将非常感谢任何建议,我正在尝试为网站配置默认错误页面和CORS。
答案 0 :(得分:1)
<httpErrors>
是<system.webServer>
(不是<system.web>
)的子元素 - 请参阅HTTP Errors in the IIS.net的详细信息。将<httpErrors>
移至<system.webServer>
。例如......
<system.webServer>
<httpErrors errorMode="Custom" existingResponse="Auto" defaultResponseMode="ExecuteURL" >
<remove statusCode="403"/>
<remove statusCode="404"/>
<remove statusCode="500"/>
<error statusCode="403" responseMode="ExecuteURL" path="/Error403" />
<error statusCode="404" responseMode="ExecuteURL" path="/Error404" />
<error statusCode="500" responseMode="ExecuteURL" path="/Error500" />
</httpErrors>
</system.webServer>