1. 程式人生 > >apache2.2支持URL中文字符

apache2.2支持URL中文字符

編譯器 sets 重啟 -o 客戶 add gb2 tgz hook

網站環境:
OS: centos6.9 X64
apache: 2.2.15

網站轉移到新環境,客戶反映新聞的一些圖片無法正常顯示。查看URL路徑發現調用的圖片是中文名稱。
網上查下,apache支持中文,需要另外的插件支持。mod_encoding.安裝mod_encoding需要gcc編譯器,要確保系統已經安裝了該編譯器。

gcc編譯器安裝
#yum install gcc

1.mod_encoding 下載
mod_encoding_64.tgz文件下載
2.安裝mod_encoding
#tar zxfv mod_encoding_64.tgz
#cd mod_encoding_64
#patch -p0 < mod_encoding.c-apache2.2-20060520.patch

#cd lib/ 進入lib目錄,安裝iconv_hook
#chmod 755 configure
#./configure --prefix=/usr
#make
#make install
#ldconfig
#cd ..
#chmod 755 configure
#./configure --with-apxs=/usr/sbin/apxs --with-iconv-hook=/usr/include 其中 --with-apxs更換稱自己apache的路徑
#make
#gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -Llib -liconv_hook
#cp mod_encoding.so /etc/httpd/modules/ 復制mod_encoding.so 到apache的modules目錄
3.編譯httpd.conf文件,添加如下代碼:

LoadModule encoding_module modules/mod_encoding.so

<IfModule mod_encoding.c>
EncodingEngine on
NormalizeUsername on
SetServerEncoding GBK
DefaultClientEncoding UTF-8 GBK GB2312
AddClientEncoding "(Microsoft . DAV $)" UTF-8 GBK GB2312

AddClientEncoding "Microsoft . DAV" UTF-8 GBK GB2312
AddClientEncoding "Microsoft-WebDAV*" UTF-8 GBK GB2312
</IfModule>

4.重啟apache

apache2.2支持URL中文字符