linux服务器默认使用中文字符集zh_CN.UTF-8

linux服务器默认使用中文字符集zh_CN.UTF-8

一.问题描述和相关概念php

    linux服务器的字符集设置可能影响到网站页面出现 “???” 等问号乱码,还有可能致使文件中的汉字部分出现乱码。html

    locales设置:语言设置选项
   linux真的是一个很是强大的系统,windows若是要更改语言系统,必需要从新安装软件, 这就是windows存在多国语言版 的缘由。而linux很是方便,咱们能够经过locales设置,将linux从英文版更改成中文版,下面咱们来看看如何更改语言设置。linux

二.缘由shell

简单的说是由于服务器没有安装zh_CN.UTF-8 字符集,致使不支持中文!ubuntu

locale   //执行这个命令,查看和语言编码有关的环境变量vim

显示以下:windows

LANG=服务器

LANGUAGE=en_US:enapp

LC_CTYPE="POSIX"post

LC_NUMERIC="POSIX"

LC_TIME="POSIX"

LC_COLLATE="POSIX"

LC_MONETARY="POSIX"

LC_MESSAGES="POSIX"

LC_PAPER="POSIX"

LC_NAME="POSIX"

LC_ADDRESS="POSIX"

LC_TELEPHONE="POSIX"

LC_MEASUREMENT="POSIX"

LC_IDENTIFICATION="POSIX"

LC_ALL=

 

能够看到大多数都默认为POSIX 类型的,这时能够改服务器的默认字符集为zh_CN.UTF-8(我测试过改了没问题哦,能够解决汉字乱码问题。若是能经过设置SecureCrt等终端能够解决的话,就不必改了)

三.解决办法

环境:Ubuntu 12.04.5 LTS \n \l

1.安装基本的软件包(第2步安装 zh_CN 中文字符集时要用到)

sudo apt-get update     //ubuntu系统更新软件包列表

sudo apt-get install  -y language-pack-zh-hans

sudo apt-get install -y language-pack-zh-hant

2.

cd /usr/share/locales    

sudo ./install-language-pack zh_CN   //开始安装zh_CN中文字符集

3.  编辑 sudo vim /etc/environment     //环境变量配置文件

 添加下面zh_CN.UTF-8有关的环境变量,添加完就变成默认的了哦:

 

LANG=zh_CN.UTF-8

LANGUAGE=en_US:en

LC_CTYPE="zh_CN.UTF-8"

LC_NUMERIC="zh_CN.UTF-8"

LC_TIME="zh_CN.UTF-8"

LC_COLLATE="zh_CN.UTF-8"

LC_MONETARY="zh_CN.UTF-8"

LC_MESSAGES="zh_CN.UTF-8"

LC_PAPER="zh_CN.UTF-8"

LC_NAME="zh_CN.UTF-8"

LC_ADDRESS="zh_CN.UTF-8"

LC_TELEPHONE="zh_CN.UTF-8"

LC_MEASUREMENT="zh_CN.UTF-8"

LC_IDENTIFICATION="zh_CN.UTF-8"

LC_ALL=zh_CN.UTF-8

 

4.从新登陆一次shell  

source /etc/environment   //使刚才添加的环境变量生效。若是不从新登陆shell的话,执行此命令可能会报错哦,我试过了!

 

四.简单看下成果

1.locale 命令看下输出结果吧!

2.也能够进入  /var/lib/locales/supported.d

cat local

显示:

en_US.UTF-8 UTF-8

zh_CN.UTF-8 UTF-8

而没有安装中文以前只显示:

en_US.UTF-8 UTF-8

注:locale -a 能够查看操做系统支持的字符集。

相关文章
相关标签/搜索