解决apache Web服务器中文网页显示乱码的方法[原创]
作者:汪学明 发表时间:2004/10/8
个人主页:http://www.ahjixi.com/ Email:xmwang65@126.com
解决的方法之一:
(1)在每一个网页里增加
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
并在APACHE的httpd.conf配置文档中将AddDefaultCharset ISO-8859-1 改为 AddDefaultCharset off

解决的方法之二:
直接在httpd.conf配置文档中将AddDefaultCharset ISO-8859-1 改为
AddDefaultCharset GB2312 .ZH-CN .zh-cn
上述两种方法都能够解决apache Web服务器网页显示乱码的问题。 其中以第二种方法最好最简单,且一劳永逸 :lol: :em11: 。
[OK!同志们快试试呀。]

race 回复于:2004-10-08 21:26:08
俺不用APACHE,也没办法验证,给您加精华鼓励一下

songyupo 回复于:2004-10-08 21:40:16
我想用可不会,到现在我还借了一堆书在学,都晕了,支持

perryhg 回复于:2004-10-09 04:21:42
我还是建议第一种方法,应该始终写良好的html文档。用第二种方法的话,假如您的服务器下面的虚拟主机里面有外国的语言的就不兼容了,更有些系统需要使用UTF-8的,您也不能强制指定语言啊。

江南大米 回复于:2004-10-09 09:11:28
以前就知道了,楼主细心写出来,顶

amin 回复于:2004-10-09 09:35:36
[quote:d894c4e0a2="perryhg"]我还是建议第一种方法,应该始终写良好的html文档。用第二种方法的话,假如您的服务器下面的虚拟主机里面有外国的语言的就不兼容了,更有些系统需要使用UTF-8的,您也不能强制指定语言啊。[/quote:d894c4e0a2]

我也常用第二种方法; :D :D 现在也明白了第一种的优势。谢谢!

强烈建议:
把楼主的帖和perryhg的回复帖归类到精华贴。

南非蜘蛛 回复于:2004-10-09 11:47:16
http://www.chinaunix.net/jh/6/16531.html

这个我以前写过了,很久以前的事了

lypszf 回复于:2004-10-09 14:20:03
我也觉得第一种比较好!

cnclg 回复于:2004-10-09 14:32:12
把AddDefaultCharset iso8859-1
屏蔽掉就能够了啊,不用“AddDefaultCharset off"
直接”#AddDefaultCharset iso8859-1

prowoo 回复于:2004-10-09 15:58:38
总认为是系统版本的问题,现在有办法解决了,多多感谢!!!

perryhg 回复于:2004-10-09 16:33:08
南非蜘蛛都出来回话了,失敬失敬,可惜很多人太浮躁了,什么事情最好别人先告诉他们,就是不愿意看精华区,三天两头提重复的问题,这不是水平问题,而是态度问题。

qqblue 回复于:2004-10-14 13:12:06
假如页面中都是charset=GBK会怎么样?
我用tomcat5的时候,只能写
<%@ page contentType="text/html, charset=GBK" %>
来解决乱码,取数据的时候还必须用
new String(....).getBytes("iso8859-1");

假如页面里都这样处理了,就没有乱码问题了吧。。。

xnaddd 回复于:2004-10-15 08:41:23
呵呵,试了一下,还是第一种好。
第二种嘛,呵呵,参数多了报错了。呵呵。只用GB2312一试,没管用。

cattiger 回复于:2004-10-16 18:08:40
ding!

wingger 回复于:2004-10-24 11:13:54
[quote:96a999ce33="xmwang65"]解决的方法之二:
直接在httpd.conf配置文档中将AddDefaultCharset ISO-8859-1 改为
AddDefaultCharset GB2312 .ZH-CN .zh-cn [/quote:96a999ce33]


[code:1:96a999ce33]#AddDefaultCharset ISO-8859-1

AddDefaultCharset off [/code:1:96a999ce33]

这种方式关掉了服务器的默认语言的发送,这样仅凭html文档头中配置的语言来决定网页语言。

在每个网页的<head></head>的最前面加入这行:

[code:1:96a999ce33]<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> [/code:1:96a999ce33]

wingger 回复于:2004-10-24 11:46:57
解决apache下各种应用的乱码问题,欢迎补充和讨论
(1)服务器端:
(2)网页的<head></head>的最前面
3、如何解决中文文档名无法访问
4、UTF-8网页空白,在网页中加上metadata标识后,还需要手动调整编码為 utf-8 才能正常显示
5、使用php,也能够定义php的默认语言.
6、java中文乱码的解决
CGI,PHI等,周详请看:

http://bbs.chinaunix.net/forum/viewtopic.php?t=381406