日语字符未正确显示在iis7中托管

时间:2014-06-02 19:37:52

标签: asp.net-mvc utf-8 iis-7 localization

我有asp.net mvc3应用程序,它在标签和按钮中显示英文和日文字符。从资源(.resx)文件中提取英文/日文字符。我在本地IIS中托管了该站点。当我从ISS浏览网站时,即使我使用域名或IP地址,也能正确显示日文字符。

问题:

我在服务器机器IIS中托管的代码相同。当我使用IP地址和站点名称(例如,http://10.111.11.11/sitename)时,日语字符会正确显示。一切都很好。

但是如果我使用域名(例如,http://abcd.mydomain.com/sitename),日语字符显示不正确。

可能是什么问题?我在网上做了一些搜索,但找不到任何答案。

我从resources.ja-JP.resx文件中提取日语单词。并在我的web.config文件中添加了<globalization culture='ja-JP uiCulture='ja-JP'>并在代码中设置了线程文化和uiculture。并且在web.config <globalization culture='auto' uiCulture='auto'>中也尝试了这一点,但这些都没有效果。

如果我使用IP地址,一切正常,但如果我使用特定的名称它不起作用? 我是否需要更改或在代码或IIS7中添加任何内容?

1 个答案:

答案 0 :(得分:1)

在你的web.config中,你说你有这套:

<globalization culture='ja-JP uiCulture='ja-JP'>

好像你错过了culture='ja-JP周围的引用所以它应该是这样的:

<globalization
     culture="ja-JP"
     uiCulture="ja-JP"
  />

但是你也有这样的utf-8设置吗?

<globalization
     fileEncoding="utf-8"
     requestEncoding="utf-8"
     responseEncoding="utf-8"
     culture="ja-JP"
     uiCulture="ja-JP"
  />

official Microsoft site的详细信息。