很久之前聽一位朋友講過,使用utf-8編碼發送郵件,會有亂碼的情況發生。近日為公司開發支持多語言的網站,正好要使用utf-8編碼。網站有會員注冊,查詢表單等模塊皆需要發送郵件給注冊用戶或者管理員。心里尋思著免不了要和這亂碼問題起正面沖突了。
奇怪的是,項目一直順利地進行的,雖然郵件中的中文在網頁里查收確實是會亂碼。但是用outlook或者foxmail收取之后在本地查看卻很正常。哈,莫非友人所指的亂碼便是如此?看來問題不大,我便將網站上傳到服務器交由另一組去測試了。
第二天,正當我悠哉游哉地在聽歌看文章時,那邊同事反饋過來說收到郵件會亂碼。心下吃了一驚了,立馬試了一下,果然,用foxmail收到打開之后還是一陀問號。循例google了一翻,想看一下有沒有人遇到過同樣的問題,但沒什么發現。之后又去dimc.net(jmail的官網)的論壇晃了半天,也沒能解決問題。看來只有靠自己了。。。
經過兩個小時不斷地在服務器上修改代碼發送郵件測試,問題并無改善。
于是開始從本地電腦與服務器上面的差異入手,先是發現jmail的版本不一致,便更新了服務器的jmail版本。無效。感覺問題應該不是出在網站程序和jmail組件上。為了確定問題的關鍵,在郵件發送之前將已經賦給jmail的內容輸出,果然,在這里郵件的內容已經亂碼。我的操作系統裝的是簡體中文版,服務器上面的是英文版,最后。嘗試在區域與語言選項里面的高級,非unicode程序的語言 上面選用了中文,重啟服務器之后問題終于解決。
新聞熱點
疑難解答