配置Apache服务器支持中文url - Apache - 服务器之家

服务器之家

专注于服务器技术!
当前位置:首页 > Web服务器 > Apache

配置Apache服务器支持中文url

发布时间:2013-11-12 来源:服务器之家

以下方式测试通过!

下载相关文件并解压
WebDAV Resources JP有Apache2对应的mod_encoding的最新版本下载

# wget http://webdav.todo.gr.jp/download/mod_encoding-20021209.tar.gz#
#wget http://webdav.todo.gr.jp/download/experimental/mod_encoding.c.apache2.20040616#
tar zxfv mod_encoding-20021209.tar.gz
cp mod_encoding.c.apache2.20020616 mod_encoding-20021209/mod_encoding.c

一)iconv_hook编译和安装

安装mod_encoding前首先需要安装iconv_hook。

$ cd mod_encoding-20021209/lib
$ ./configure$ make
$ su
# make install
完成上面操作后,iconv_hook相关so文件放到/usr/local/lib下面。
要操作系统系统能够搜索到该so文件,需要完成一下几行操作
打开/etc/ld.so.conf文件,添加一行指向iconv_book的所在路径,即"/usr/local/lib"

# vi /etc/ld.so.conf/usr/local/lib

# PATH="$PATH:/sbin"# ldconfig
二) apxs工具安装
编译mod_encoding时,必须要有apxs,httpd-devel中包括创建和安装扩展模块的apxs工具。如果是你安装了Apache,检查${APACHE_HOME}/bin/下是否存在apxs,
如果存在则略过该步无需自己安装该程序包,如果尚未安装e则需要自己手动安装httpd-devel。
# apt-get install http-devel
■ mod_encoding模块的编译
进入mod_encoding-20021209.tar.gz的解压目录,即mod_encoding-20021209

# ./configure --with-apxs=/usr/sbin/apxs --with-iconv-hook=/usr/local/include
# make
#ls -l mod_encoding.o
查看是否已经生成了mod_encoding.o文件,如果是,则make成功继续下边的操作。
# gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -L/usr/local/lib -Llib -liconv_hook生成mod_encoding.so文件,
将该文件拷贝到你的模块存放目录,一般为${APACHE_HOME}/modules/# cp mod_encoding.so /usr/local/apache/modules/mod_encoding.so
■ httpd.confd的設定
LoadModule headers_module modules/mod_headers.so
LoadModule encoding_module modules/mod_encoding.so
<IfModule mod_headers.c>
Header add MS-Author-Via "DAV"
</IfModule>
<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>