今天在上传网站的过程中忽然发现自己在WINDOWS下做好的PHP网站显示好好的,但是一传到LINUX服务器上面网页就出现了很多的乱码,于是开始找原因,找了一个晚上都没有找到问题,把网站的编码方式和数据的编码方式改了好多遍,不断的测试,可是还是现实乱码。郁闷之下,打算关机睡觉,可是就在这个时候忽然想到以前做ASP的时候,在WINDOWS下,也是UTF-8和GB2312同时都是可以使用的,于是想到可能是服务器设置的问题,于是开始查找资料,果不其然,问题就出在这里,原始是服务器默认解析网页文件的时候都用了UTF-8,所以才导致我的网站乱码。那么接下来说一下我的解决办法。
在Linux服务器的 vi /etc/httpd/conf/httpd.conf 这个文件里找到:
#
# Specify a default charset for all content served; this enables
# interpretation of all content as UTF-8 by default. To use the
# default browser choice (ISO-8859-1), or to allow the META tags
# in HTML content to override this choice, comment out this
# directive:
#
AddDefaultCharset UTF-8
#
# AddType allows you to add to or override the MIME configuration
# file mime.types for specific file types.
#
#AddType application/x-tar .tgz
Apache中决定服务器编码的httpd.conf中AddDefaultCharset决定的,我设置为AddDefaultCharset utf-8,所以服务器默认是utf-8的;
只要在AddDefaultCharset utf-8前面加个#,把这句话注释掉就可以了,那么以后打开网页的时候,浏览器将根据网页的META来选择字符编码,apache就可以支持多字符编码了。
以上信息由百翔西安网站制作搜集编辑,转载请注明文章来自西安百翔网站建设