如何在ASP.NET应用程序中实现多语言服务器错误?

时间:2016-10-21 14:05:08

标签: c# asp.net .net multilingual iis-8

我的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>

我的应用程序目录包含以下文件:

  • httpErrors \定制\ EN-US \ 500.htm
  • httpErrors \定制\去DE \ 500.htm

除了内容语言外,这两个文件完全相同。

我现在将一个名为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处理的情况下静态处理错误。

0 个答案:

没有答案