解決IIS下UTF-8文件報(bào)錯(cuò)亂碼的問(wèn)題

字號(hào):

解決IIS下UTF-8文件報(bào)錯(cuò)亂碼的問(wèn)題
    原因:
    你的網(wǎng)站是utf-8編碼,但iis的錯(cuò)誤信息輸出默認(rèn)使用的是gb2312編碼。導(dǎo)致iis出現(xiàn)運(yùn)行時(shí)錯(cuò)誤的時(shí)候顯示的頁(yè)面是亂碼。
    解決辦法:
    [辦法1]
    自己處理錯(cuò)誤,不讓iis來(lái)處理。
    在所有可能出錯(cuò)的地方,都用類(lèi)似下面的方式來(lái)捕捉。
    On Error Resume Next
    Err.Raise 6 '這行是可能出錯(cuò)的代碼
    If Err Then
    Response.Write Err.Description
    Response.End
    End If
    On Error Goto 0
    [辦法2]
    改變iis錯(cuò)誤信息輸出默認(rèn)編碼。
    1)將c:\winnt\help\iishelp\common\500-100.ASP拷貝到網(wǎng)站(根)目錄下
    2)將這個(gè)文件修改為utf-8編碼。
    2.1)頭部加上 @codepage=65001
    2.2)option explicit后面加上一行response.charset="utf-8"
    2.3)將Session.Codepage = 936改為Session.Codepage = 65001
    2.4)將第156行
    If objASPError.ASPDescription > "" Then
    后面的回車(chē)去掉(這個(gè)地方微軟寫(xiě)錯(cuò)了)
    2.5)配置iis,設(shè)置“自定義錯(cuò)誤頁(yè)面”,將500;100的類(lèi)型設(shè)為URL,同時(shí)URL設(shè)為 /500-100.asp
    2.6)將500-100.asp另存為utf-8編碼