【道勤網(wǎng)】- bmrsportswear.com 軟件視頻自學教程|免費教程|自學電腦|3D教程|平面教程|影視動畫教程|辦公教程|機械設計教程|網(wǎng)站設計教程!【道勤網(wǎng)】

標題: DISCUZ!一次UC通信失敗的解決的過程 [打印本頁]

作者: 學習NO.1    時間: 2016-1-22 22:56
標題: DISCUZ!一次UC通信失敗的解決的過程
近些日子,道勤主機小編在自己的道勤PHP空間裝了一個Discuz在上面進行升級測試,遇到了有一個比較難纏的問題,也就是出現(xiàn)“UC通信失敗”,折騰了小編好幾天。終于發(fā)現(xiàn)了問題,現(xiàn)在把處理問題的過程分享給各位站長朋友,以便各位朋友碰到有類似問題不知道如何解決。
測試環(huán)境使用的是正式環(huán)境的文件,只是修改了數(shù)據(jù)庫的配置(config_global.php),在網(wǎng)站的根目錄,讓其連接數(shù)據(jù)庫,其實就是這么簡單的修改,讓后續(xù)問題復雜起來。
論壇很容易就運轉起來,但是與uc通信時,卻始終提示不成功。小編尋求官方論壇的幫助,在官網(wǎng)上查找了許多文章,也沒有找到對癥的解決方法。后來小編去下載官方的一個repair_uc.php,用它來測試,也總是提示失敗,到最后,發(fā)現(xiàn)輸出的狀態(tài)中,有ACSII碼的特殊字符,因為是3個字符,而小編使用utf-8編碼,所以很容易就聯(lián)想到utf-8簽名(有的稱bom頭),但具體到時哪一個文件引起,就需要查找了。因為環(huán)境是不變的(包括配置文件的修改,所以一時沒有意識到是config_global.php的原因),小編只能逐步排查代碼,花費一天的上班時間,最終確定問題在include這個配置文件后,頁面多輸出信息。此時才通過查看文件編碼,發(fā)現(xiàn)是“utf-8”,而不是“utf-8 無簽名”,因為道勤主機PHP空間一直使用“utf-8無bom”,于是另存文件,再測試——通信正常!
原來還是老問題重談,但是很少會有站長朋友會想到這個UC通信失敗的問題竟是這個可惡的bom導致的,所以在這里特意整理成文檔方便大家。
道勤主機PHP空間在執(zhí)行include文件時,有幾點是需要注意的,一個是文件的結束符(?>)后,不能有多余的符號或者空行;使用utf-8編碼時,要注意文件保存為無簽名(或無bom頭)格式。否則可能會出些莫名其妙的錯誤。
希望可以幫助到各位站長朋友!





歡迎光臨 【道勤網(wǎng)】- bmrsportswear.com 軟件視頻自學教程|免費教程|自學電腦|3D教程|平面教程|影視動畫教程|辦公教程|機械設計教程|網(wǎng)站設計教程!【道勤網(wǎng)】 (http://bmrsportswear.com/) Powered by Discuz! X3.4