为Azure网站配置web.config

时间:2014-07-23 00:49:19

标签: azure web cors iis-8

我是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。

1 个答案:

答案 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>