为不同的虚拟主机设定不同的字符编…

来源:互联网 发布:mac 查询端口 编辑:程序博客网 时间:2024/06/06 01:05

不同需求
因为服务器上有很多虚拟主机,而有些虚拟主机需要UTF-8编码支持,一些需要GB2312编码支持。

运行环境
ubuntu7.04
Apache-2.2.3
碰到问题
在apache2的全局设置里,设置了默认字符集为UTF-8,而一些需要GB2312支持的网站,在访问的时候,就出些乱码。

AddDefaultCharset UTF-8
解决办法
修改全局默认字符集为GB2312
AddDefaultCharset GB2312
修改需要支持UTF-8的虚拟主机配置,指定默认字符集
<VirtualHost *>
ServerAdmin web@domain.com
ServerName test.domain.com

       DocumentRoot /home/domain.com/web

       AddDefaultCharset UTF-8

       <Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory/home/domain.com/web>
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

</VirtualHost>
解决结果
默认支持GB2312字符集的虚拟主机HTTP头信息
Date: Fri, 11 May 2007 01:12:24 GMT
Server: Apache/2.2.3 (Debian) PHP/5.2.0-8+etch1
Accept-Ranges: bytes
Cache-Control: max-age=300
Expires: Fri, 11 May 2007 01:17:24 GMT
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 30466
Content-Type: text/html; charset=GB2312

200 OK

 

设置支持UTF-8字符集的虚拟主机HTTP头信息
Date: Fri, 11 May 2007 01:13:07 GMT
Server: Apache/2.2.3 (Debian) PHP/5.2.0-8+etch1
X-Powered-By: PHP/5.2.0-8+etch1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0,pre-check=0
Pragma: no-cache
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 4447
Keep-Alive: timeout=15, max=463
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8

200 OK

0 0