5

我创建了一个 XML 提要,它在我的本地开发环境中输出正常,但在实时服务器上,我收到以下错误:

XML Parsing Error: XML declaration not well-formed
Location: http://realaussieadventures.com/home/tourFeed
Line Number 1, Column 15:

<?xml version=1.0 ?>
--------------^

我已经尝试了带引号 ( <?xml version="1.0" ?>) 的版本 - 适用于本地 - 不带引号 ( <?xml version=1.0 ?>) - 不适用于本地或实时 - 带有转义引号 () - 适用于本地。

Local 是一个 MAMP 开发环境。

这有什么问题?

4

4 回答 4

6

认为答案有点过时,但由于问题在 Google 中非常重要,我将把它留在这里。

提示:重新检查您的双引号 (") 是否是实际的双引号,例如 ANSI 代码 34,而不是任何 Unicode 双引号 (U+201C / U+201D),它们可能会偶尔滑入输出文件并且在视觉上很难追踪。

单引号也是如此,您最喜欢的用于编写脚本的 Unix 编辑器可能会插入撇号/重音符号对而不是单引号。

你觉得这就够了吗?不,我曾经偶然发现 Unicode 不可破坏的空格字符 (U+00A0) 在元素属性之间滑动而不是简单的 ANSI 代码 32 空格。解析器惨遭失败。

长话短说:使用严格的 ANSI 编辑器来准备 XML 生成样板。

于 2013-07-01T19:12:25.983 回答
3

我有同样的问题。我意识到我留下了版本、编码和引号。格式良好的 xml 具有版本和编码。

<?xml version="1.0" encoding="UTF-8"?> 这应该可以工作。不要遗漏引号。

于 2012-11-19T16:46:15.803 回答
2

我遇到了类似的问题,当我尝试在浏览器中打开配置文件时,这就是我的情况:

XML Parsing Error: XML declaration not well-formed
Location: http://localhost:8080/job/MyProject/config.xml
Line Number 1, Column 16:
<?xml version='1.1' encoding='UTF-8'?>
---------------^

我尝试将单引号更改为双引号,但没有帮助。

但是我将 XML 版本从更改1.11.0似乎可以解决我的问题。

于 2018-07-09T22:24:46.957 回答
1

尝试这个:

header("Content-Type: text/xml")
echo " xml version='1.0' encoding='UTF-8' standalone='yes' ";

在“1.0”、“UTF-8”等中使用单引号。它对我有用。

于 2013-03-04T08:21:03.290 回答