我的ASP.NET Web应用程序在web.config中有以下部分:
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="500" subStatusCode="-1" />
...
<error statusCode="500" prefixLanguageFilePath="httpErrors\custom" path="500.htm" responseMode="File" />
...
</httpErrors>
我的应用程序目录包含以下文件:
除了内容语言外,这两个文件完全相同。
我现在将一个名为errorsim.aspx的简单aspx文件添加到我的站点的根目录,以返回500状态代码进行测试。以下是内容:
<%@ Page Language="C#" %>
<script runat="server">
protected void Page_Init(object sender, EventArgs e)
{
Response.Clear();
Response.StatusCode = 500;
Response.End();
}
</script>
当我从我的本地开发机器(使用en-GB全球化设置配置)浏览到local.domain.com/errorsim.aspx时,我看到来自en-US目录的500.htm我认为是默认。但是,在安装Chrome extension来模拟来自德国本地化文化的请求后,我仍然看到了en-US内容。
我在这里做错了吗?请注意,我正试图在没有任何.NET处理的情况下静态处理错误。