為什麼 Firefox 不渲染這個 AWstats 生成的 html?
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>
由於降價的怪異,上面的渲染方式並不完全;相反,你會得到 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)
# If you prefer having the report output pages be built as XML compliant pages # instead of simple HTML pages, you can set this to 'xhtml' (May not work # properly with old browsers). # Change : Effective immediatly # Possible values: html or xhtml # Default: html # BuildReportFormat=html
該 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。