。 " />
在將網(wǎng)站上傳到godaddy空間之后碰到的一些問題,其中就包括了中文亂碼的問題。在上篇博文里,我參照了網(wǎng)絡(luò)上流傳的方法,即在asp文檔的前面加上如下的代碼 <% @language=vbscript codepage=936%>。
這個方法表面上看上去是有效的——為什么這么說呢?因為在你沒有往網(wǎng)站里面添加新的內(nèi)容之前,用添加這段代碼的方法基本可以解決中文亂碼的問題。不過在經(jīng)過了一段時間的檢驗之后才發(fā)現(xiàn)這個方法其實是治標(biāo)不治本。正如上所述,如果沒有往網(wǎng)站里面添加新的內(nèi)容,也就是說沒有更新數(shù)據(jù)庫的情況下,這個方法是有用的。但是,如果更新的數(shù)據(jù)庫,比如發(fā)表了新的網(wǎng)站動態(tài),則會發(fā)現(xiàn)新發(fā)表的中文字符仍然是以亂碼的形式出現(xiàn)在網(wǎng)頁里面。這一度令我非常沮喪。
在經(jīng)歷過幾百次的實驗和嘗試之后,終于慢慢摸清楚了問題的根本原因所在。下面將解決godaddy空間中文亂碼的方法分享出來,給同樣掙扎在godaddy空間亂碼問題中的朋友一個參考(我只能說是給你們一個參考,這才是科學(xué)的態(tài)度,因為我們知道即便是同一個現(xiàn)象,其原因也可能千差萬別。)同樣,也給自己一個備忘錄,以免在經(jīng)后再碰到相同的問題的時候仍然是束手無策。
要解決godaddy空間中文亂碼問題,分下面的三個步驟:
第一步:將所有的中文.asp頁面的編碼更改成UTF-8
很多asp網(wǎng)站默認(rèn)的編碼形式都是ANSI,這樣的網(wǎng)頁文件需要重新編碼,凡是ANSI編碼的網(wǎng)頁文件要一律改成UTF-8的編碼形式。我是習(xí)慣使用Notepad2文本編輯器來編輯這些網(wǎng)頁文件的,也推薦大家使用。Notepad2不但可以編輯普通的TXT文檔,對HTML,PHP,ASP等文件同樣也可以很輕松得編輯,而且體積很小,非常適用。如果你也是使用Notepad2來編輯.asp文件的話,你就可以在文件-編碼后面直接選擇UTF-8來重新編碼該文件。
第二步:將網(wǎng)頁文檔中有如下代碼的地方改成后面的形式
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
其實這里也就是將gb2312編碼改成utf-8編碼。不過請注意,如果你的網(wǎng)站是做雙語的,那么你只需要改中文網(wǎng)頁文件就可以,千萬不要去改英文的網(wǎng)頁文件,否則你的中文是沒有亂碼了,但是英文全部變成了亂碼。切記第一步也要注意這一點。
經(jīng)過了這兩步,其實靜態(tài)網(wǎng)頁文件的中文亂碼問題都已經(jīng)解決了,經(jīng)過這兩步的效果是和上一篇博文中提到的添加代碼<% @language=vbscript codepage=936%>的效果是一樣的。如果你的網(wǎng)站沒有牽涉到數(shù)據(jù)庫,那么到這一步就基本OK了!但是如果你的網(wǎng)站也和博主的網(wǎng)站一樣是牽涉到access數(shù)據(jù)庫的,那么你還需要進行第三步的操作。
第三步:在中文網(wǎng)頁文檔的前面添加如下的代碼
<%@codepage="65001"%>
這一行代碼添加到網(wǎng)頁文件的最前面就可以了!
小提示:如果你是對這這篇文章一步一步來操作的話,我建議你看完了三步之后再一步到位地操作,當(dāng)然,如果你不嫌麻煩看一步修改一篇所有的網(wǎng)頁文件,看一步再修改一遍所有的網(wǎng)頁文件也不會出錯——雖然有點笨——我的意思是這三步其實是可以在打開一個網(wǎng)頁文件的時候一次性修改完成的(第二步如果沒有這句代碼的話就不需要修改)!
文章編輯:深圳網(wǎng)站建設(shè) 轉(zhuǎn)載請注明http://www.bitaneminsesi.com