Iis-7

在 IIS 7 中:如何為任何錯誤設置預設錯誤文件

  • January 4, 2017

對於 IIS 可能遇到的任何錯誤,我想使用“error.html”。

如果我在我的 webconfig 中聲明以下塊,則該站點拒絕執行。

<httpErrors errorMode="DetailedLocalOnly" existingResponse="Replace" defaultPath="/error.html" defaultResponseMode="ExecuteURL">
   <remove statusCode="500" subStatusCode="-1" />
   <remove statusCode="404" subStatusCode="-1" />
   <remove statusCode="403" subStatusCode="-1" />
   <remove statusCode="401" subStatusCode="-1" />
   <error statusCode="401" prefixLanguageFilePath="" path="/401.html" responseMode="ExecuteURL" />
   <error statusCode="403" prefixLanguageFilePath="" path="/403.html" responseMode="ExecuteURL" />
   <error statusCode="404" prefixLanguageFilePath="" path="/404.html" responseMode="ExecuteURL" />
   <error statusCode="500" prefixLanguageFilePath="" path="/500.html" responseMode="ExecuteURL" />
</httpErrors>

注意根元素中的屬性defaultPath="/error.html"

我收到以下錯誤

HTTP 錯誤 500.19 - 內部伺服器錯誤

配置錯誤: 鎖定衝突

編輯 %windir%\system32\inetsrv\config\applicationHost.config

設置線:

<httpErrors lockAttributes="allowAbsolutePathsWhenDelegated,defaultPath">

到:

<httpErrors lockAttributes="allowAbsolutePathsWhenDelegated">

嘗試使用 IIS 7 管理器進行正確設置。此外,你也許可以這樣做:

<system.web>
   <customErrors mode="On" defaultRedirect="~/error.html">
   </customErrors>
</system.web>

引用自:https://serverfault.com/questions/53712