红联Linux门户
Linux帮助

Linux上配置Apache,支持中文名称文件下载的方法

发布时间:2006-11-01 01:06:31来源:红联作者:cxtt228
Linux上的Apache默认不支持中文名的文件下载,有一段时间让我很郁闷,因为一个项目中,客户要求能够下载中文名的文件,后来不得已在程序里面做处理得以解决,但一直有点不甘心,觉得Apache肯定可以支持的,刚好最近在网上看到了mod_encoding这个模块,MS这是个日本人写的(先Bs一下日本,然后把他们的好东西拿来用 :))。

首先从这里下载文件:mod_encoding-20021209.tar.gz 这个模块包,这个包默认是支持Apache 1.3.X的,如果想在Apache2上使用的话,需要在下载另外一个文件文件,在这里下载

配置步骤如下:

#cp mod_encoding-20021209.tar.gz /usr/local/

#cd /usr/local/

#tar -zxvf mod_encoding-20021209.tar.gz

如果是Apache2

#cp mod_encoding.c.apache2.20020616 /usr/local/mod_encoding-20021209/mod_encoding.c

# cd mod_encoding-20021209/lib

# ./configure

# make

# make install

# vi /etc/ld.so.conf

在最下面添加/usr/local/lib 保存退出。

#PATH="$PATH:/sbin"

#ldconfig

#cd /usr/local/mod_encoding-20021209

#./configure --with-apxs=/www/bin/apxs --with-iconv-hook=/usr/local/include

上面的/www修改为你的Apache安装目录

#make

#ls -l

查看是否已经生成了mod_encoding.o文件,如果有,则make成功继续下边的操作。

#gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -L/usr/local/lib -Llib -liconv_hook

#cp mod_encoding.so /usr/lib/httpd/modules/mod_encoding.so

在配制Apache配置文件

#vi /www/conf/httpd.conf

在文件最后添加:

LoadModule encoding_module /usr/lib/httpd/modules/mod_encoding.so



Header add MS-Author-Via "DAV"







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



大功告成,重启Apache之后,怎么样?以上方法在RedHat 9上测试通过。
文章评论

共有 1467 条评论

  1. 60.176.194.* 于 2007-08-05 06:12:52发表:

    离心泵离心泵离心泵
    虚拟主机虚拟主机虚拟主机
    投影机维修投影机维修
    投影机维修投影机维修
    办公家具办公家具办公家具
    升降平台升降平台升降平台
    脚手架脚手架脚手架
    IP电话IP电话IP电话
    IT外包IT外包IT外包

  2. 60.177.54.* 于 2007-07-31 13:28:47发表:

    海外ホテル。。
    国内ホテル。。
    国???のかけ方。。
    雇用保?。。
    格安航空券。。
    格安航空券。。
    ?俗。。
    防犯カメラ。。
    地震保?。。
    大学受?。。
    大学受?。。
    大人のおもちゃ 通?。。
    大人のおもちゃ。。
    出会い。。
    出会い。。
    出会い。。
    ?? レンタカ?。。
    ?科?正。。
    不眠。。
    不??投?。。
    比?。。
    保?比较。。
    包茎。。
    包茎。。
    包茎。。
    ロリポップ。。
    ロ?ン。。
    レ?シック。。
    レ?シック。。
    レ?シック。。