這篇文章運(yùn)用簡(jiǎn)單易懂的例子給大家介紹如何解決apache php亂碼的問(wèn)題,代碼非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
成都創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來(lái),先為巴東等服務(wù)建站,巴東等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為巴東企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
apache php亂碼的解決辦法:首先注釋掉“php.ini”中的代碼;然后將主目錄語(yǔ)言修改為“AddDefaultCharset utf-8”;接著將需要的文件夾更改編碼方式;最后重啟apache即可。
PHP顯示亂碼和apache內(nèi)部編碼問(wèn)題的解決
編碼問(wèn)題
PHP默認(rèn)的編碼是utf-8,測(cè)試時(shí)候?yàn)榱朔奖悴蝗?xiě)html代碼的meta標(biāo)記也不會(huì)出現(xiàn)亂碼
E:\OpenStudy\www\CSphp
而我下載的幫助文檔的html版本電子資料需要的是gb2312的設(shè)置
E:\OpenStudy\www\Electronic Books
開(kāi)始配置服務(wù)器的時(shí)候,php采用的是大家共同推薦的utf-8的編碼方式
[php.ini] default_charset = "UTF-8"
服務(wù)器根目錄:
E:\OpenStudy\www
查閱的相關(guān)資料
AddDefaultCharset 指令 說(shuō) 明 當(dāng)應(yīng)答內(nèi)容是text/plain或text/html時(shí),在HTTP應(yīng)答頭中加入的默認(rèn)字符集 語(yǔ) 法 AddDefaultCharset On|Off|charset 默認(rèn)值 AddDefaultCharset Off 作用域 server config, virtual host, directory, .htaccess 覆蓋項(xiàng) FileInfo 狀 態(tài) 核心(C) 模 塊 core
當(dāng)且僅當(dāng)應(yīng)答內(nèi)容是text/plain或text/html時(shí),此指令將會(huì)在HTTP應(yīng)答頭中加入的默認(rèn)字符集。理論上這將覆蓋在文檔體中通過(guò)標(biāo)簽指定的字符集,但是實(shí)際的行為通常取決于用戶瀏覽器的設(shè)置。AddDefaultCharset Off 將會(huì)禁用此功能。AddDefaultCharset On 將啟用Apache內(nèi)部的默認(rèn)字符集iso-8859-1 。您也可以指定使用在IANA注冊(cè)過(guò)的字符集名字中的另外一個(gè)charset 。比如說(shuō):
AddDefaultCharset utf-8
AddDefaultCharset只應(yīng)當(dāng)在如下情況下使用:所有文本資源都使用同一種確定的字符集,且分別標(biāo)記他們的字符集非常麻煩。一個(gè)這樣的例子是向包含動(dòng)態(tài)內(nèi)容的資源中添加字符集參數(shù)(比如先前遺留的CGI腳本),這樣可能會(huì)因?yàn)樵谳敵鲋邪脩籼峁┑臄?shù)據(jù)而導(dǎo)致跨站點(diǎn)腳本攻擊。但是請(qǐng)注意:更好的解決辦法是修改或刪除這些腳本,因?yàn)樵O(shè)置了默認(rèn)的字符集以后將會(huì)使得瀏覽器的字符集自動(dòng)探測(cè)功能失效。
AddCharset 指令 說(shuō)明 在給定的文件擴(kuò)展名與特定的字符集之間建立映射 語(yǔ)法 AddCharset charset extension [extension] ... 作用域 server config, virtual host, directory, .htaccess 覆蓋項(xiàng) FileInfo 狀態(tài) 基本(B) 模塊 mod_mime
AddCharset指令在特定的文件擴(kuò)展名與特定的字符集之間建立映射。charset是以extension為擴(kuò)展名的文件的MIME字符集參數(shù)。這個(gè)映射關(guān)系會(huì)強(qiáng)制添加在所有現(xiàn)存的映射關(guān)系上,并覆蓋所有現(xiàn)存的extension擴(kuò)展名映射。
AddLanguage ja .ja AddCharset EUC-JP .euc AddCharset ISO-2022-JP .jis AddCharset SHIFT_JIS .sjis
有了以上定義以后,文檔xxxx.ja.jis會(huì)被當(dāng)成是使用字符集ISO-2022-JP的日文文檔(文檔xxxx.jis.ja也一樣)。AddCharset指令除了用于通知客戶端文檔的字符集編碼方式以便正確地翻譯和顯示以外,還用于內(nèi)容協(xié)商(根據(jù)用戶的優(yōu)先選擇信息,從幾個(gè)文檔中選擇一個(gè)返回給用戶)。
指令 說(shuō) 明 封裝一組指令,使之僅對(duì)文件空間中的某個(gè)目錄及其子目錄生效 語(yǔ) 法 ... 作用域 server config, virtual host 狀 態(tài) 核心(C) 模 塊 core
Options Indexes FollowSymLinks
使用directory-path參數(shù)的時(shí)候要注意:它們必須與Apache用于訪問(wèn)文件的文件系統(tǒng)路徑保持一致。賦予特定
解決方法
1.注釋掉php.ini中的代碼
[php.ini] ;default_charset = "UTF-8"
2.將主目錄語(yǔ)言修改為
AddDefaultCharset utf-8
將需要的文件夾【E:/OpenStudy/www/Electronic Books】更改編碼方式
AddDefaultCharset gb2312
修改完成,重啟apache,大功告成
關(guān)于如何解決apache php亂碼的問(wèn)題就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。