我在CentOS 6.4服务器上有一个简单的html网站。 在每个我设置的HTML页面
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
我已经在.htaccess文件中添加了以下行
IndexOptions Charset=UTF-8
并在我添加的网站的httpd.conf文件中
<VirtualHost *:80> /* other stuff */ AddDefaultCharset UTF-8 IndexOptions Charset=UTF-8 </VirtualHost>
在httpd.conf中主线
AddDefaultCharset UTF-8
也被设置。
仍然当我在Chrome中debugging我得到我的请求标题是:
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-US,en;q=0.8
和我的回应标题是:
Content-Type: text/html; charset=iso-8859-1
访问我得到的语言环境命令
LANG=el_GR.UTF-8 LC_CTYPE="el_GR.UTF-8" LC_NUMERIC="el_GR.UTF-8" LC_TIME="el_GR.UTF-8" LC_COLLATE="el_GR.UTF-8" LC_MONETARY="el_GR.UTF-8" LC_MESSAGES="el_GR.UTF-8" LC_PAPER="el_GR.UTF-8" LC_NAME="el_GR.UTF-8" LC_ADDRESS="el_GR.UTF-8" LC_TELEPHONE="el_GR.UTF-8" LC_MEASUREMENT="el_GR.UTF-8" LC_IDENTIFICATION="el_GR.UTF-8" LC_ALL=
而/ etc / sysconfig / i18n有以下几行
LANG="el_GR.UTF-8" SYSFONT="latarcyrheb-sun16"
仍然每一个我尝试访问它的标题的URL是在希腊语中,我得到一个404错误,没有find一个url/希望你喜欢我的朋友,但是没有find。 该页面在那里,但由于某种原因,编码不起作用。
我将不胜感激任何forms的帮助。 谢谢
IndexOptions指令只对apache自动生成的目录列表产生影响,并且对于实际的html页面没有任何影响。
您的请求没有指定任何types的编码,它不应该对您的页面生成有任何影响。
内容 (也是你的静态HTML文件的实际编码)也不应该改变任何东西,而不是它的<meta设置。
在你的情况下唯一有效的指令是AddDefaultCharset UTF-8 。 它必须工作。 有可能是压倒你的字符集。
如果你提供一个简单的文本文件会发生什么? 你会得到一个utf8 http回复标题吗?
检查你的hmtl文件:
file /var/www/html/your_page.html
也许你的编辑器保存了Latin-1编码。
要更改编码,请尝试:
iconv -f ascii -t utf8 [filename] > [newfilename]
要么
recode UTF-8 [filename]