详解Linux环境下使Nginx服务器支持中文url的配置流程

1:确定你的系统是UTF编码

  [root@Tserver ~]# env|grep LANG  LANG=en_US.UTF-8  

2:NGINX配置文件里默认编码设置为utf-8

  server  {  listen 80;  server_name .inginx.com ;  index index.html index.htm index.php;  root /usr/local/nginx/html/inginx.com;  charset utf-8;  }  

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

3、将非UTF-8的文件名转换为UTF-8编码
使用nginx的优点在于能够使用中文url,但是Windows的文件名中文编码默认为GBK,拿过来需要转换
做法很简单,把文件名都修改成utf8编码就可以了! 【但apache是不需要这么麻烦的】
安装convmv,由他去转换编码:

  yum install convmv -y  convmv -f GBK -t UTF8 -r --notest target 目标路径  

其中-f是源编码,-t是目标编码,-r是递归处理目录,--notest是不移动,实际上对文件进行改名,target是目标目录
在对于windows操作系统的时候,可以无视此方法,一般windows下使用nginx转发的时候是不会出现这类问题的,当先的方法只是针对的是linux下的操作。

参与评论