Apache 2.4 編碼GB2312中文亂碼的問題


今天部署了一個項目,代碼和數據庫都是gb2312的,本地和服務器都是apache2.4的版本,本地編碼沒問題,response的content-type是空的。按html的mete解析的,查看源碼也是正常的。可是部署到服務器上就出現亂碼,雖然手動設置編碼后頁面顯示正常,可是查看源碼還是亂碼的,查看了google瀏覽器的網絡插件,發現 response的content-type 里charset給設置成utf-8了,結果一開始是修改的 apache的配置文件, AddDefaultCharset 為 Off 或者 GB2312 都不解決問題。百度了好多內容還是不行。多數是修改AddDefaultCharset。

最后還是翻牆去google ,發現有個國外的哥們兒 采用了 headers_module  的擴展,設置 header 然后在 .htaccess 里面試了下,解決問題了。真高興啊,搞了好久了。現在記錄下來。

<Files ~ "\.html?$">  
     Header set Content-Type "text/html; charset=utf-8"
</Files>

特別注意的是 這個需要打開 mod_headers.so 模塊擴展,具體搜下 http.conf 里的  mod_headers.so ,打開前門的#就可以了。然后重啟apache。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM