使用 符号获取“配置文件不是格式良好的XML”

时间:2014-01-29 15:14:50

标签: xml iis

我正在设置一个新的测试服务器(IIS 7),并且仅从现有测试服务器复制文件以获取此错误:

HTTP Error 500.19 - Internal Server Error

The requested page cannot be accessed because the related configuration data for the page is invalid.

Configuration file is not well-formed XML

抱怨这条线:

<add key="DSN" value="server=.\;User ID=TestUser;Password=thisisnottherealpasswordbutithasa�init;Initial Catalog=TestDB" />

这实际上是在配置文件中:

<add key="DSN" value="server=.\;User ID=TestUser;Password=thisisnottherealpasswordbutithasa£init;Initial Catalog=TestDB" />

如果我从密码中删除了£符号,它会正确加载,所以我不相信这只是掩盖了另一个问题。

同样的密码在其他测试服务器的配置中,并且正确加载它。

我是否可能错过了IIS的设置阶段,这会影响XML配置中允许哪些字符?

2 个答案:

答案 0 :(得分:1)

这是一个编码问题, 符号在UTF-8文件中用于表示无效字符。就像错误地以UTF-8文件结尾的iso-latin-1编码字符一样。

答案 1 :(得分:0)

您可能需要使用实体作为£符号 - 我最近遇到了类似的问题。或者你可以把它放在CDATA部分。