是否可以使用字符集UTF-8服务Apache的默认内部页面?

这个问题具体是关于Apache服务器(在我的情况下是2.2)在使用默认的内部页面时使用的字符集。 例如, mod_autoindex目录列表,未find的ErrorDocument页面,500内部错误页面等

Apache目前使用的这些内置页面的字符集是iso-8859-1(见截图)。

在这里输入图像说明

这里是我的相关的Apache设置:

# apache2.conf: AddDefaultCharset utf-8 

我的操作系统是Debian 7,我使用它的默认prefork二进制。 我在想这些网页上的字符集可能不会改变。 或者,也许有一个编译时选项,影响默认字符集?

在我的(特定于Debian的)/ etc / apache2 / envvars中,我find了默认的语言环境:

 $ cat /etc/apache2/envvars . /etc/default/locale $ cat /etc/default/locale LANG="en_US.UTF-8 $ env | grep LANG LANG=en_US.UTF-8 

使用mod_headers修改Content-Type标题对Apache的默认内部页面没有影响。

对的,这是可能的。 您可以使用ErrorDocument<Location>ForceType的组合来完成此ForceType ,如下所示:

 ErrorDocument 404 /404.html <Location /404.html> ForceType "text/html; charset=utf-8" </Location>