如何将默认编码更改为UTF
我正在使用托管公司,如果index.html
文件不存在,它将在目录中列出文件,它使用iso-8859-1作为默认编码。
如果服务器是Apache,是否有办法将UTF-8设置为默认值?
更新:此外,我发现它实际上使用HTML 3.2的DOCTYPE,然后根本没有字符集...所以它不设置任何编码。 但有没有办法改变它使用UTF-8?
在httpd.conf中添加(或者如果它已经存在,则更改):
AddDefaultCharset utf-8
将此添加到您的.htaccess
:
IndexOptions +Charset=UTF-8
或者,如果您拥有管理员权限,则可以通过编辑httpd.conf
并添加以下内容来全局设置它:
AddDefaultCharset UTF-8
(您也可以在.htaccess
使用AddDefaultCharset
,但它不会以这种方式影响Apache生成的目录列表。)
请参阅AddDefaultCharset指令,AddCharset指令和本文。
AddDefaultCharset utf-8
但我必须不时地使用中文字符。 之前,我将中文字符翻译为Unicode代码,并使用&#
hack将其包含在文档中。 但它仅适用于有几个字符的页面。
有一个更好的方法来做到这一点:编码字符集信息的文件名,和Apache将输出正确的编码标题的基础上。 这可能要归功于conf文件中的AddCharset
行,如下面这行:
conf/httpd.conf
:
AddCharset UTF-8 .utf8
所以如果你有一个名字以.html.utf8
结尾的文件,apache会像使用UTF-8编码一样提供页面,并且会相应地在头文件中转储正确的字符编码指令。