1:确定你的系统是UTF编码
1
2
|
[root@Tserver ~] # env|grep LANG LANG=en_US.UTF-8 |
2:NGINX配置文件里默认编码设置为utf-8
1
2
3
4
5
6
7
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 上传文件,请选择 回话–>外观–UTF-8
如果是FTP软件也将默认编码设置为TUF-8
3、将非UTF-8的文件名转换为UTF-8编码
使用nginx的优点在于能够使用中文url,但是Windows的文件名中文编码默认为GBK,拿过来需要转换
做法很简单,把文件名都修改成utf8编码就可以了! 【但apache是不需要这么麻烦的】
安装convmv,由他去转换编码:
1
2
|
yum install convmv -y convmv -f GBK -t UTF8 -r --notest target 目标路径 |
其中-f是源编码,-t是目标编码,-r是递归处理目录,--notest是不移动,实际上对文件进行改名,target是目标目录
在对于windows操作系统的时候,可以无视此方法,一般windows下使用nginx转发的时候是不会出现这类问题的,当先的方法只是针对的是linux下的操作。