Apache(32位):
安装环境:CentOS 5.6 + Apache 2.2.15
安装结果:安装后支持“中文图片、文件名”链接直接打开
以下为安装过程:
1、下载安装包

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

2、直接解压

  1. tar zxvf mod_encoding-2.2.0-1.i386.tar.gz

看到2个rpm安装包,进行安装

  1. rpm -ivh iconv_hook-1.0.0-1.i386.rpm
  2. rpm -ivh mod_encoding-2.2.0-1.i386.rpm

3、用 find / -name httpd.conf 找到apache配置文件httpd.conf,vi编辑加入以下内容

  1. LoadModule encoding_module modules/mod_encoding.so
  2. Header add MS-Author-Via "DAV"
  3. EncodingEngine on
  4. NormalizeUsername on
  5. SetServerEncoding GBK
  6. DefaultClientEncoding UTF-8 GBK GB2312
  7. AddClientEncoding "(Microsoft .* DAV $)" UTF-8 GBK GB2312
  8. AddClientEncoding "Microsoft .* DAV" UTF-8 GBK GB2312
  9. AddClientEncoding "Microsoft-WebDAV*" UTF-8 GBK GB2312

保存退出
4、重启apache

  1. service httpd restart

5、完成!

注:如果安装的是WDCP,重启apache会失败,需要将mod_encoding.so复制到/www/wdlinux/httpd-2.2.22/modules下,
命令:

  1. cp /usr/lib/httpd/modules/mod_encoding.so /www/wdlinux/httpd-2.2.22/modules

Apache(64位):
————————————————————-
此方案用于解决Apache软件对中文网址、中文图片、文件名的支持问题。
通过测试环境:64位CentOS5.5 + Apache2.2.15
————————————————————-
下载 mod_encoding_64.tar.gz
源码包由吴世昌整理,已经包含了apache2.2所需的补丁。
2011.9.20由Hostloc.com的Captain修改补充。
————————————————————-
1、安装gcc组件

  1. yum install gcc -y

2、下载压缩包

  1. wget http://d.nicwind.com/files/mod_encoding_64.tar.gz

3、将压缩包解压,进行编译

  1. tar zxvf mod_encoding_64.tar.gz
  2. cd mod_encoding_64
  3. patch -p0 < mod_encoding.c-apache2.2-20060520.patch
  4. cd lib
  5. chmod 755 configure
  6. ./configure --prefix=/usr
  7. make && make install
  8. ldconfig
  9. cd ../
  10. chmod 755 configure
  11. cp -p /usr/sbin/apxs /usr/bin
  12. ./configure --with-apxs=/usr/bin/apxs --with-iconv-hook=/usr/include
  13. make
  14. gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -Llib -liconv_hook
  15. cp mod_encoding.so /usr/lib/httpd/modules

注:/usr/lib/httpd/modules为apache的modules目录,可以用

  1. find / -name modules

找出这个目录的路径
注意把/usr/lib/httpd/modules改成你的apache模块存放路径。

4、完成以上操作后,再修改apache的配置文件(可以用find / -name httpd.conf,找出httpd.conf文件的路径),把下面的内容添加到apache的配置文件httpd.conf中。

  1. LoadModule encoding_module modules/mod_encoding.so
  2. EncodingEngine on
  3. NormalizeUsername on
  4. SetServerEncoding GBK
  5. DefaultClientEncoding UTF-8 GBK GB2312
  6. AddClientEncoding "(Microsoft .* DAV $)" UTF-8 GBK GB2312
  7. AddClientEncoding "Microsoft .* DAV" UTF-8 GBK GB2312
  8. AddClientEncoding "Microsoft-WebDAV*" UTF-8 GBK GB2312

保存,退出

5、重启apache

  1. service httpd restart

6、完成

注:如果安装的是WDCP,重启apache会失败,需要将mod_encoding.so复制到/www/wdlinux/httpd-2.2.22/modules下,
命令:

  1. cp /usr/lib/httpd/modules/mod_encoding.so /www/wdlinux/httpd-2.2.22/modules

复制代码

Nginx:

一、确定你的Linux系统是UTF编码,Root登录SSH:

  1. env|grep LANG
  2. LANG=en_US.UTF-8

复制代码

二、NGINX配置文件里默认编码设置为utf-8

  1. server
  2. {
  3. listen 80;
  4. server_name xxxx.com ;
  5. index index.html index.htm index.php;
  6. root /usr/local/nginx/html/inginx.com;
  7. charset utf-8;
  8. }

三、如果使用putty
windows –> translation –>UTF-8

mkdir 中文目录名
echo ‘中文目录名’ > 中文目录名/中国.html

四、如果是用securecrt 上传文件,请选择 回话–>外观–UTF-8
如果是FTP软件也将默认编码设置为TUF-8

五、如果上传的文件名出现乱码显示
执行

  1. for f in `ls *.html` ; do mv $f `ls $f|iconv -f GBK -t UTF-8`; done

完毕。


Apache、NGINX支持中文URL的更多相关文章

  1. 配置NGINX支持中文URL 中文文件名称或文件夹404无法訪问的解决方法

    NGINX不须要象apache那样要单独载入支持中文模块. # cat /etc/sysconfig/i18n  LANG="en_US.UTF-8" SYSFONT=" ...

  2. Nginx 使用中文URL,中文目录路径

    Nginx 使用中文URL,中文目录路径 分类: linux2012-05-03 11:04 2672人阅读 评论(0) 收藏 举报 nginxurl服务器translationcentosserve ...

  3. AFNETWorking 不支持中文URL请求

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #000000; min-height: 16.0px } p.p ...

  4. Linux让Apache支持中文URL图片/文件名

    需要用到iconv_hook和mod_encoding Apache(32位): 安装环境:CentOS 5.6 + Apache 2.2.15 (Apache2.4同样适用) 安装结果:安装后支持“ ...

  5. 让Linux中的Nginx支持中文文件名

    原文:https://blog.csdn.net/soeben/article/details/79525964 首先你的服务器需要安装了UTF-8字符集在命令行里输入env|grep LANG如果显 ...

  6. 再谈Nginx Rewrite, 中文URL和其它

    上次谈到过Nginx和中文URL的问题,这几天又加深了认识. 多分享几个关于Nginx Rewrite的经验. Nginx匹配指定中文URL的方法:rewrite "(*UTF8)^x{66 ...

  7. Apache 后台服务器(主要处理php及一些功能请求 如:中文url)   Nginx 前端服务器(利用它占用系统资源少得优势来处理静态页面大量请求)   Lighttpd 图片服务器   总体来说,随着nginx功能得完善将使他成为今后web server得主流。

    Apache 后台服务器(主要处理php及一些功能请求 如:中文url) Nginx 前端服务器(利用它占用系统资源少得优势来处理静态页面大量请求) Lighttpd 图片服务器 总体来说,随着ngi ...

  8. Nginx中文url出现404问题

    Nginx中文url出现404问题 前提条件检查,如我的系统centos,需要检查系统字符集是不是支持utf-8, 怎么配置可以参考这个帖子 https://www.vpser.net/manage/ ...

  9. Nginx、PCRE和中文URL(UTF8编码)rewrite路径重写匹配问题

    最近遇到了使用Nginx 重写中文UTF8编码路径的问题. 才发现默认情况下Nginx的rewrite是不支持UTF8匹配的. 比如: rewrite ^/(..)$ /2个字符文章.html bre ...

随机推荐

  1. SuiteScript > Apply script to Assembly and Kit

    Path: Customization > Scripting > Scripts > New Limitation: Client script can't apply to As ...

  2. js sql C#时间、时间戳相互转换

    js. sql. C#时间.时间戳相互转换 //1.获取当前时间戳_c# ) / //2.时间戳->时间 C# DateTime b11 = GetTime(");//11位时间戳-& ...

  3. 用户识别APP项目开发计划书

    用户识别APP项目开发计划书        项目介绍: 用户识别APP,通过在有限时间内引导用户A交互,提取用户的行为特征,然后将APP交给用户X(可能是A也可能是陌生人),在1分钟内引导X交互,判断 ...

  4. 3d游戏模型及地形提取及导航

    支持所有DirectX的游戏模型提取 有需要的可以直接联系我!QQ290387340

  5. RSA3:预提取数据

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  6. python与C++交互

    python和C++能进行有效的交互,c++调用Python的一些小用法 写了一个python脚本导入发生异常,可能是编码问题(如存在中文),Python默认的是ASCII可加上:#!/usr/bin ...

  7. Initializing connection provider: org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider停住了

    2015.1.24进行了服务器的搬家,搬家后,更换了新的IP,导致新的IP访问以前IP的数据库服务无法成功Initializing connection provider: org.springfra ...

  8. python 02

    函数的参数 默认参数: 函数的基本形参, 可以有默认参数, 什么是基本形参呢, 就是普通变量, 如字符串, 数字等. 并且带有默认参数的形参, 要放在后边. 传参时, 不必将所有的参数都传递, 可以只 ...

  9. Redis使用及优化入门

    Redis的优势 MySQL读写慢,Redis内存数据库,读写速度快. 少量的数据要经常读写,尤其是读操作,读写速度要求高. 丰富的数据结构,Redis支持5种数据结构,MySQL字段变化,需要手动维 ...

  10. java中使用队列:java.util.Queue (转)

    Queue接口与List.Set同一级别,都是继承了Collection接口.LinkedList实现了Queue接 口.Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类 ...