admin管理员组

文章数量:1538411

1、浏览器编码检查

以谷歌浏览器为例

  • 不添加插件:F12--控制台输入document.charset

查看网页源码编码方式,看是否同步,不同步需修改浏览器编码;

  •  添加浏览器编码插件:更多工具--扩展程序--添加charset插件

下载charset插件包,通过 加载已解压的扩展程序 添加文件夹;

 2、检查服务器中文编码环境

  • 2.1 查看是否安装中文包

可以使用下面的命名查看系统是否安装了中文安装包

locale -a |grep "zh_CN"

结果若没有输出,说明没有安装,输入下面的命令安装

yum groupinstall "fonts" -y

安装完成后,输入命令查看安装了哪些中文包;

[root@]# locale -a |grep "zh_CN"
zh_CN
zh_CN.gb18030
zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8

如上说明系统已安装中文语言包,无需再安装

如果按照下面的步骤系统仍然无法使用中文,可以一个一个尝试上面的编码方式。比如把LANG="zh_CN"修改为LANG="zh_CN.gb18030"

  • 2.2修改配置文件

在修改配置文件之前,先看当前系统语言环境

# echo $LANG
en_US.UTF-8

# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

虽然安装了中文语言包但本机的语言环境并不是中文,需要修改locale.conf配置文件;

(1)通过命令修改locale.conf配置文件:

#  localectl set-locale LANG=zh_CN #选择想要的语言
#  source /etc/locale.conf 

(2) vim 工具修改locale.conf配置文件:

yum install vim*  ##之后输入y等待vim工具安装完成

# vim /etc/locale.conf
LANG="zh_CN"
# source /etc/locale.conf   ## source 命令可以使修改的配置文件生效
vim /etc/locale.conf 进入编辑页面,输入i开始编辑,编辑完成输入esc到底行模式,然后输入:wq,保存并退出

修改完后再修改当前语言环境

# echo $LANG
zh_CN

# locale
  • 2.3 验证是否成功
[root@]# date   ##看输出字符是否为中文字符

3、检查服务器nginx编码问题(项目用nginx部署)

出现乱码可能由于以下位置没有配置编码格式:

nginx服务端,nginx.conf设置utf-8编码格式:注意server层 和 访问路径location都要配置一下

server {
   listen 81;
   set $root F:/Develop/nginx-1.14.0/html;
   root $root; 
   server_name  localhost;
   access_log  logs/host.access.log  main;
   index index.html index.php;
   #设置字符集
   charset utf-8;
 
   location / {
      root html;
        index index.html index.htm;
        charset utf-8;
      }
}  

修改了nginx的配置文件,重新加载一下nginx

nginx -s reload

本文标签: 乱码原因网页