/ 中存储网

64位Linux系统中设置Apache服务器对中文URL的支持

2014-04-14 13:29:02 来源:IT技术网
此方案用于解决apache软件对中文网址的支持问题,例如支持www.xxx.com/中文名字.jpg

通过测试环境:64位centos5.5 + apache2.2.15

有日本人开发了mod_encoding模块,用于解决apache中文URL的解析,但许多朋友在安装过程中总会遇到麻烦,在此我将亲自整理并测试通过的方案分享一下。

下载http://upload.server110.com/file/20130909/1-130Z91TU3616.zip使用编译安装。这是我整理过的源码包,含补丁。

将压缩包下载到你的linux系统中,解压到/home,解压后的路径是/home/mod_encoding_2010

然后按顺序执行以下命令:

cd /home/mod_encoding_2010

patch -p0 < mod_encoding.c-apache2.2-20060520.patch

cd lib

chmod a+x configure

./configure --prefix=/usr

make

make install

ldconfig

如果没有apxs需要安装httpd-devel.x86_64

cd ../

chmod a+x configure

./configure --with-apxs=/usr/sbin/apxs --with-iconv-hook=/usr/include

gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -Llib -liconv_hook

cp mod_encoding.so /etc/httpd/modules

注意把/etc/httpd/modules改成你的apache模块存放路径。

完成以上操作后,再修改apache的配置文件,把刚才解压的mod_encoding.conf文件复制到apache的conf.d目录中。

如果没有conf.d目录,请把mod_encoding.conf的内容添加到apache的配置文件httpd.conf中。 重启apache服务即可。

至于32位平台,我用rpm包安装就解决了apache的中文网址支持,网上容易下载到,在此不提。