网页乱码的出现,一般是网页的存储,指定的语言格式,服务商的解释不统一造成的。青岛畅通网制作了一个日文网站,当上传后发现,网页是乱码,分析了一下原因,发现是IE浏览器解释出来的编码与网页本身的编码不统一造成的。
解决的办法是用记事本打开网页,把<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>改为<metahttp-equiv="Content-Type"content="text/html;charset=utf-8">,然后,选择文件另存为,这儿一定要注意,保存编码类型选择utf-8,这一步很重要!这样保存后上传网页,乱码已经消失了。其实,请注意,保存为utf-8与ansi两种不同的格式,占用的磁盘空间是不同的,虽然我们用记事本打开,看到的内容相同,但在磁盘上占据的空间,文件大小却不相同!这还影响着乱码与否!这一点,很容易被忽视。
另外还需要注意的是,有时,你制作的网页,上传后,打开却是空白页,是什么原因呢?在dreamweaver中,分明是有内容的,但为什么上传后,却是空白页,没有内容呢?现在,请你把<metahttp-equiv="Content-Type"content="text/html;charset=utf-8">这一行的位置移动到<haed>后,一定保证<title>前,再看一下,问题是不是已经解决了?这些小的调整,却带来不小的效果!
gb2312转换为utf-8编码的方法:
第一步:
修改commond.asp文件,将文件的前4行,也就是定义cookie,application域前面的代码用以下代码替换:
<%@language="vbscript"codepage="65001"%> <% optionexplicit response.buffer=true session.codepage=65001 server.scripttimeout=90 %>
然后修改header.asp和admincp.asp还有attachment.asp文件找到程序代码:
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>
修改为程序代码:
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8">
第二步:
将blog的所有asp和js文件,用记事本打开,然后另存为,编码本来是默认,选择成utf-8就可以了。
其实页面显示的和文件所采用的字符集并无直接关系,其只是一个声明作用。真正的主体还是该文件保存时的编码格式:ANSIOrUTF-8
最方便的方法如下:
不要转换任何模块网页的编码该utf-8的还是utf-8,该Gb22312的还是Gb2312。
在Utf-8模块的包文件(如conn.asp,但是要注意conn.asp必须是在第一行调用)最前面加上
<%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%> <%Session.CodePage=65001%>
在GB2312模块的包文件最前面加上
<%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%> <%Session.CodePage=936%>
其他编码的类推:
<%@codepage=65001%>UTF-8 <%@codepage=936%>简体中文 <%@codepage=950%>繁体中文 <%@codepage=437%>美国/加拿大英语 <%@codepage=932%>日文 <%@codepage=949%>韩文 <%@codepage=866%>俄文