XML 解析错误:格式不正确位置:https ://awstats.example.org/reports/www.example.org/2011/06/awstats.www.example.org.xml第 603 行,第 34 列:
<tr><td class="aws">- Toile du Qu\uffffbec</td><td>363</td><td>363</td></tr>
由于 markdown 的奇怪性,上面的内容并不是它的呈现方式;相反,您会得到 FFFF 的 unicode failbox。我不确定为什么这是个问题,因为 vim 可以很好地呈现它,并且文档本身说
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
我需要启用 awstats 中的设置才能正确处理非美国字符吗?
您可以通过以下配置将 awstats 切换为使用 4.01 Transitional:
(来自 awstats.model.conf)
该 DOCTYPE 指示浏览器使用 XHTML Strict。XHTML 指示如果文档中有任何错误,则显示错误而不是优雅地降级。这是没有人真正使用 XHTML (Strict) 的主要原因之一。XHTML 是 XML 文档的语法。因此,任何有效的 XHTML 文档也是有效的 XML 文档。XML 规范不允许 Unicode 代理项块 0xFFFE 和 0xFFFF。看这里。
我不知道您是否可以采取任何措施来修复 AWStats。作为测试,您可以尝试将 DOCTYPE 更改为 XHTML Strict 以外的任何内容。试试 HTML 4.01 或 HTML5。然后浏览器可能仍然会显示一些东西,而不是只给出一个错误。尝试用字符实体引用替换 0xFFFF 字符。无论如何,我想知道为什么那里有 0xFFFF。它看起来应该是重音符号 e,当然不是 0xFFFF。