將網站遷移到CentOS下後,突然發現,帶中文的目錄以及檔案無法通過URL來訪問了。 困擾了好幾天,終於找到瞭解決方法。
mod_encoding是日本人開發的一個Apache模組,用以支援中文、日文等非英文URL。如:http://www.test.com/寶萊塢.mp3
1、安裝mod_encoding
需要下載兩個rpm包(iconv_hook-1.0.0-1.i386.rpm和mod_encoding-2.2.0-1.i386.rpm):
wget http://www.xiit.cn/attachments/tools/iconv_hook-1.0.0-1.i386.rpm
wget http://www.xiit.cn/attachments/tools/mod_encoding-2.2.0-1.i386.rpm
用rpm命令安裝:
rpm -ivh iconv_hook-1.0.0-1.i386.rpm
rpm -ivh mod_encoding-2.2.0-1.i386.rpm
2、配置:
(1) 開啟mod_encoding支援,需要開啟Apache內建的mod_header模組
在/etc/httpd/conf/httpd.conf中,
LoadModule headers_module modules/mod_headers.so //一般預設為開啟,無需更改
(2) 安裝mod_encoding RPM包時會自動產生mod_encoding.conf
vi /etc/httpd/conf.d/mod_encoding.conf
LoadModule encoding_module modules/mod_encoding.so
<IfModule mod_encoding.c>
EncodingEngine on
NormalizeUsername on
SetServerEncoding GBK
DefaultClientEncoding UTF-8 GBK GB2312
AddClientEncoding "cadaver/" UTF-8 GBK GB2312
</IfModule>
儲存後,重啟Apache服務,大功告成!轉自:http://blog.csdn.net/kangqing2003/article/details/6660763