设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
快捷导航
发布信息
搜索
搜索
首页
优惠促销
云服务器
独立服务器
站群服务器
母鸡服务器
服务器托管
全球云服务器
技术文档
联系
每日签到
本版
文章
帖子
用户
主机测评网
»
论坛
›
技术文档
›
其他教程
›
Nginx下无法使用中文URL的解决方法
返回列表
发新帖
Nginx下无法使用中文URL的解决方法
[复制链接]
|
主动推送
129
|
0
|
2024-9-11 08:19:38
|
显示全部楼层
|
阅读模式
在更换了博客空间后,发现许多文章页出现404的情况,找了一下原因,发现是由于URL含有中文而Nginx默认不支持中文URL导致的。此文记录了解决方法。
在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.iots.vip;
root /www;
index index.html index.jsp;
charset utf-8;
...
同时需要将FTP与shell工具的字符集设置为UTF-8。
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
hecgdge4
159
主题
0
回帖
10
积分
新手上路
新手上路, 积分 10, 距离下一级还需 40 积分
新手上路, 积分 10, 距离下一级还需 40 积分
积分
10
加好友
发消息
回复楼主
返回列表
网络技术教程
软件使用教程
Windows教程
Centos教程
Ubuntu教程
Linux其他教程
综合教程
其他教程
其他文档
服务器商家推荐
华夏互联
蓝速云
米图云
全球云
文章
1
苹果电脑MAC系统登录Windows远程桌面
2
Debian拓展硬盘工具。cloud-utils-growpart、xfsprogs
3
安卓Android手机怎么使用V2rayNG?
4
WINDOWS系统电脑怎么使用WINXRAY?
5
notepad++.8.5.7编辑器,代码编辑器
6
DirectX修复工具增强版_V4.3.0.40864版本DLL修复工具C++安装
7
Visual C++运行库合集包完整版VisualCppRedist_AIO_x86_x64
8
ChromeSetup谷歌浏览器一键安装