如何在web.config中的httpErrors上设置defaultPath时指定自定义错误页面?

时间:2011-10-28 02:16:12

标签: asp.net iis error-handling

我目前正致力于将asp.net网站部署到共享托管环境,这可以按预期工作(404页呈现)

<httpErrors errorMode="Custom">
    <remove statusCode="404" subStatusCode="-1" />
    <error statusCode="404" prefixLanguageFilePath="" path="/file-not-found.htm" responseMode="ExecuteURL" />
</httpErrors>

但这不是(500内部服务器错误)

<httpErrors errorMode="Custom" defaultPath="error.htm" defaultResponseMode="ExecuteURL">
    <remove statusCode="404" subStatusCode="-1" />
    <error statusCode="404" prefixLanguageFilePath="" path="/file-not-found.htm" responseMode="ExecuteURL" />
</httpErrors>

我要求查看applicationHost.config,它有:

<httpErrors errorMode="Custom" defaultPath="C:\inetpub\custerr\en-US\SSLRedirect.htm" lockAttributes="allowAbsolutePathsWhenDelegated,defaultPath">

所以我假设defaultPath作为一个锁定属性是引起问题的东西。

因为这是部署到共享环境,托管公司不愿意修改applicationHost.config来删除defaultPath上的锁 - 所以有没有办法在不解锁defaultPath属性的情况下指定默认错误页面? / p>

1 个答案:

答案 0 :(得分:2)

在global.asax中你可以实现Application_Error()并重定向到你想要的任何地方吗?