QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1164|回复: 13

Apache2.0.40服务,网页显示乱码

[复制链接]
发表于 2003-4-20 17:57:23 | 显示全部楼层 |阅读模式
自己在REDHAT LINUX8.0做了个WEB服务器,用的是系统自带的Apache2.0.40,每次进入服务器的网页,默认都显示为西欧字符(乱码),要调整浏览器的编码才能正常显示中文。请问为什么会这样?
在windows2000下用IIS时,网页不会显示乱码,但装Apache2.0.45也会显示为乱码。为什么linux和windows2000用Apache都有乱码的现象呢?
该怎么解决,是不是通过设置httpd.conf能解决问题?
如果是该怎么设置?
求助!!!!!!!!!!!!!!!!!!
发表于 2003-4-20 18:24:14 | 显示全部楼层
这里有很多关于这方面的文章,下次发贴前先找找看。
回复

使用道具 举报

 楼主| 发表于 2003-4-21 13:49:34 | 显示全部楼层
问题已解决
回复

使用道具 举报

发表于 2003-4-23 20:38:17 | 显示全部楼层
snhym, 如何解决的?
回复

使用道具 举报

发表于 2003-4-24 18:44:56 | 显示全部楼层
怎样解决啊兄弟,我的也是这个问题啊???请教。。。。。
回复

使用道具 举报

发表于 2003-4-24 20:05:06 | 显示全部楼层
如何解决的啊?我也想知道
回复

使用道具 举报

 楼主| 发表于 2003-4-24 21:47:45 | 显示全部楼层
找到下面这段 改一下就可以了。要重启才有效


# reasons in browsers, related to javascript and URL parsing
# which encourage you to always set a default char set.
#
AddDefaultCharset GB2312  (这里是改默认语言编码)

#
# Commonly used filename extensions to character sets. You probably
# want to avoid clashes with the language extensions, unless you
# are good at carefully testing your setup after each change.
# See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets for
# the official list of charset names and their respective RFCs
#
AddCharset ISO-8859-1  .iso8859-1  .latin1
AddCharset ISO-8859-2  .iso8859-2  .latin2 .cen
AddCharset ISO-8859-3  .iso8859-3  .latin3
AddCharset ISO-8859-4  .iso8859-4  .latin4
AddCharset ISO-8859-5  .iso8859-5  .latin5 .cyr .iso-ru
AddCharset ISO-8859-6  .iso8859-6  .latin6 .arb
AddCharset ISO-8859-7  .iso8859-7  .latin7 .grk
AddCharset ISO-8859-8  .iso8859-8  .latin8 .heb
AddCharset ISO-8859-9  .iso8859-9  .latin9 .trk
AddCharset ISO-2022-JP .iso2022-jp .jis
AddCharset ISO-2022-KR .iso2022-kr .kis
AddCharset ISO-2022-CN .iso2022-cn .cis
AddCharset Big5        .Big5       .big5
AddCharset GB2312      .gb2312     .gb      *************这里我加上去的,没试过不加可不可以******
# For russian, more than one charset is used (depends on client, mostly):
AddCharset WINDOWS-1251 .cp-1251   .win-1251
AddCharset CP866       .cp866
AddCharset KOI8-r      .koi8-r .koi8-ru
AddCharset KOI8-ru     .koi8-uk .ua
AddCharset ISO-10646-UCS-2 .ucs2
AddCharset ISO-10646-UCS-4 .ucs4
AddCharset UTF-8       .utf8

# The set below does not map to a specific (iso) standard
# but works on a fairly wide range of browsers. Note that
# capitalization actually matters (it should not, but it
# does for some browsers).
#
# See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets
# for a list of sorts. But browsers support few.
#
AddCharset GB2312      .gb2312 .gb
AddCharset utf-7       .utf7
AddCharset utf-8       .utf8
AddCharset big5        .big5 .b5
AddCharset EUC-TW      .euc-tw
AddCharset EUC-JP      .euc-jp
AddCharset EUC-KR      .euc-kr
AddCharset shift_jis   .sjis

#
# AddType allows you to add to or override the MIME configuration
# file mime.types for specific file types.
#
回复

使用道具 举报

发表于 2003-4-25 14:21:59 | 显示全部楼层
其实,只要把
AddDefaultCharset GB2312 (这里是改默认语言编码)
注释掉就OK了,当然,这就需要你在网页里的<Head>标签里注明使用什么字符集了,一般中文的网页制作软件都会自动加入charset = gb2312这句话的
回复

使用道具 举报

发表于 2003-4-25 16:25:32 | 显示全部楼层
感谢大家的回复
回复

使用道具 举报

发表于 2003-4-25 16:52:22 | 显示全部楼层
恩,谢谢各位
回复

使用道具 举报

发表于 2003-4-26 23:12:13 | 显示全部楼层
我的apache2也发生这样的问题

httpd.conf里
AddCharset GB2312      .gb2312 .gb
这行本来就有

测试页面中添加了:
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=gb2312">

可是仍然中文是乱码要手动将mozilla的字符编码改成 GB2312 才能显示中文. 而此时如果查看页面源代码,中文仍然式乱码.
(如果用lynx则可以直接自动转成中文,正常显示.)

我在httpd.conf里加上
AddLanguage zh-cn .cn
仍然没有用.

甚至把
AddDefaultCharset        ISO-8859-1
改成
AddDefaultCharset        GB2312
还是没有效果.

我认为 "AddDefaultCharset  GB2312" 应该不是关键
因为
http://www.gnu.org/
http://www.debian.org/
这样的站点都有各种语言的本地化页面, 这些网站上的中文都能正常显示.而这些国外的站点是不可能把默认语言编码设置成GB2312的.

本来我一直以为这是由于apache2.0对中文支持有问题造成的(原来用apache,中文支持的不错). 现在,这里有人说解决了中文问题,我想来请教一下这是不是还有其他什么配置不对才造成的呢.
回复

使用道具 举报

发表于 2003-5-16 15:00:22 | 显示全部楼层
我所有的方法都试过了,还是不行(rh9,apache-2.0.45)为什么
回复

使用道具 举报

发表于 2003-5-17 16:42:57 | 显示全部楼层
直接把AddDefaultCharset ISO-8859-1 这一行注释掉(行前加个"#"),
然后清除缓存就行了。 :-)
回复

使用道具 举报

发表于 2003-5-18 20:01:19 | 显示全部楼层
直接把 AddDefaultCharset ISO-8859-1 注释掉以后能显示中文
不过,谁还能解释这样一个问题:
默认设置下,也就是 AddDefaultCharset ISO-8859-1 的时候,同样也是双字节的韩文和日文都能支持, 而中文却不行,这又是为什么呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-16 16:22 , Processed in 0.038139 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表