【发布时间】:2010-10-07 01:57:59
【问题描述】:
我创建了一个static website,其中每个页面的结构如下:
- 标题、菜单等常见内容
- 主要内容 div 中的页面特定内容
- 页脚
在本网站中,所有常见的内容都在每个页面中重复。为了提高可维护性,我重构了页面以使用服务器端包含(SSI),这样公共内容就不会重复。现在每个页面的结构是
- 用于常见内容的 SSI,如标题、菜单等。
- 主要内容 div 中的页面特定内容
- 页脚的 SSI
在重构的站点中,由于某种原因,法语字符在特定于页面的内容区域中不再正确显示,尽管它们在通过 SSI 包含的内容中显示良好。
包含的标头将字符集指定为:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
如果我在浏览器中打开其中一个主要内容页面,它会告诉我字符编码为 ISO-8859-1。我尝试使用以下行将 .htaccess 文件添加到文件夹中
AddDefaultCharset UTF-8
AddCharset UTF-8 .shtml
AddCharset UTF-8 .html
但那些讨厌的法国口音仍然无法在使用 SSI 的网站版本上正确显示。
【问题讨论】:
-
“重构站点”的链接不再有效,但我怀疑它的开头没有提供 BOM(字节顺序标记)。原网站上有一个。或者至少 cURL 向我展示了熟悉的
´╗┐<!DOCTYPE html>
标签: html character-encoding server-side-includes ssi