找回密码
 立即注册

QQ登录

只需一步,快速开始

主机交流Megalayer兑换位02兑换位03
兑换位04兑换位05兑换位06兑换位07
查看: 209|回复: 0

Nginx下无法使用中文URL的解决方法

[复制链接]

98

主题

10

回帖

604

积分

高级会员

积分
604
发表于 2021-5-26 00:54:20 | 显示全部楼层 |阅读模式

在Apache中,要实现对中文的支持需要单独加载中文模块,而Nginx是支持多种编码不需要安装其他组件的,只是默认是走UTF-8的支持路线。这里提供两种方法实现Nginx对中文URL的支持。
方法一
利用convmv对文件名转码
此方法治标不治本,仅供紧急时候使用(访问量大时间段,无法对服务器进行重启操作的时候)。
这里以CentOS为例,其他系统同理。
安装convmv
yum -y install convmv
转码
convmv -fGBK -tUTF8 -r –notest target
其中-f是源编码,-t是目标编码,-r是递归处理目录,–notest是不移动,实际上对文件进行改名,target是目标目录。
方法二
更改Nginx站点配置文件,修改编码为UTF-8。
系统区域语言设置
vi /etc/sysconfig/i18n
加入
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
并重启系统(如果没有此文件则创建)
更改Nginx设置
编辑站点的Nginx配置文件,在sever中添加
charset utf-8;
如:
server{
listen 80;
servername www.fuwuqijia.com;
root /www;
index index.html index.jsp;
charset utf-8;
同时需要将FTP与shell工具的字符集设置为UTF-8。



华纳云提供优质的香港服务器、美国/香港云服务器、香港高防服务器
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|GDC主机交流论坛_GDC之家

GMT+8, 2024-4-26 19:44 , Processed in 0.055607 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表