成功实现Linux Apache支持中文文件名访问

网上搜索一下“linux下apache支持中文名”结果很多,都是讲的mod_encoding,但你会发现他们的文章大都雷同,而且需要源码编译,最重要的是成功率不高,至少我试了好几次未能修成正果。

无耐,去翻了日语的原文,更简单的方法让我发现了。3分钟内搞定!

日本站直接提供RPM包下载,wget回来,rpm -ivh 重启httpd,刷新网页,OK了!中文文件名可以正常访问了!

注:

1、我的是apache 2.2.3版本,请注意你的apache版本,一般2.2.x都可以。

2、开启mod_encoding支持,需要开启mod_headers模块

vi httpd.conf修改(该模块的安装不做介绍另请查阅,我的apache自带):

LoadModule headers_module modules/mod_headers.so

3、在安装mod_encoding RPM包时会自动生成 /etc/httpd/conf.d/mod_encoding.conf

4、要完美支持中文还需修改配置文件内容为:

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>

5、修改完毕

rpm包源站下载地址:

安装包

ftp://ftp.aconus.com/fc5/mod_encoding/mod_encoding-2.2.0-1.i386.tar.gz

源码包

ftp://ftp.aconus.com/fc5/mod_encoding/mod_encoding-2.2.0-1.src.tar.gz

四博镜像:

安装包

/service/UploadFile/200902/17/mod_encoding-2.2.0-1.i386.tar.gz

源码包

/service/UploadFile/200902/17/mod_encoding-2.2.0-1.src.tar.gz

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/4dde76af6ac86734753c030eb652317d.html