网上搜索一下“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