配置NGINX支持中文URL 中文文件名或目录404无法访问的解决办法
配置NGINX支持中文URL 中文文件名或目录404无法访问的解决方法
NGINX不需要象apache那样要单独加载支持中文模块。
# cat /etc/sysconfig/i18n LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" 如果没有i18n则创建,重启系统。
服务器端字符集如下 # 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=
在nginx.conf文件里配置的字符集也是utf-8 server { listen 80; server_name test.cn; root /data; index index.html index.jsp; charset utf-8; ……
各大门户都隐藏nginx的版本号 他们如此做必有道理所以我们也学习吧
总共两步!
第一步:
先到 /www/wdlinux/nginx-1.4.1(我升级了版本)/conf 下 找到 nginx.conf 文件
然后打开找到 tcp_nodelay on; 在下面那一行添加 server_tokens off; 即可
如:
keepalive_timeout 60;
tcp_nodelay on;
server_tokens off;
这样就行了 (高手别笑,教程本来就是要方便简便)
第二步:
如果升级了新版本直接略过~~~~~
不过还是提下为好
还是在同样的目录 找到 fcgi.conf 打开
然后找到 fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
更改成:fastcgi_param SERVER_SOFTWARE nginx; 即可
然后重启WEB服务 或者 重启服务器吧
NGINX不需要象apache那样要单独加载支持中文模块。
# cat /etc/sysconfig/i18n LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" 如果没有i18n则创建,重启系统。
服务器端字符集如下 # 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=
在nginx.conf文件里配置的字符集也是utf-8 server { listen 80; server_name test.cn; root /data; index index.html index.jsp; charset utf-8; ……
客户端用的是secureCRT,用的字符集改为utf-8,用uft-8后再用rz上传文件,在ie下中文可以正常显示了。
Apache可以使用mod_encoding支持中文目录和文件,LNMP下Nginx其实不需要安装额外的组件即可支持中文文件名或中文目录,下面说一下常见的CentOS、Debian、Ubuntu Linux发行版下的设置方法和可能会遇到的问题:
设置前可以执行:locale 看一下,如果显示是en_US.UTF-8,即是正常,不用按下面的步骤设置。如果显示其他编码需要按如下步骤设置。
CentOS
编辑/etc/sysconfig/i18n 文件,内容修改为:(可以使用vi、nano或winscp图形管理软件,依个人口味选择)
LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16"
保存,重启系统。
Debian
apt-get install -y locales dpkg-reconfigure locales
执行dpkg-reconfigure locales后会出现如下对话框:
用向下的方向键找到en_US.UTF-8 UTF-8,按空格选择,再按回车键。
再按向下键选择en_US.UTF-8,再按回车键确认,重启系统。
Ubuntu
编辑/etc/default/locale文件,修改内容为(没有的话创建一个):
LANG="en_US.UTF-8" LANGUAGE="en_US:en"
保存,再执行:
locale-gen en_US en_US.UTF-8
重启系统。
执行:locale 看一下是否显示是en_US.UTF-8,如果报错,请在本文反馈。按以上步骤设置好后即可支持中文,可以上传中文的文件或中文的目录。
第七城市th7cn
WDCP 隐藏Nginx版本号教程各大门户都隐藏nginx的版本号 他们如此做必有道理所以我们也学习吧
总共两步!
第一步:
先到 /www/wdlinux/nginx-1.4.1(我升级了版本)/conf 下 找到 nginx.conf 文件
然后打开找到 tcp_nodelay on; 在下面那一行添加 server_tokens off; 即可
如:
keepalive_timeout 60;
tcp_nodelay on;
server_tokens off;
这样就行了 (高手别笑,教程本来就是要方便简便)
第二步:
如果升级了新版本直接略过~~~~~
不过还是提下为好
还是在同样的目录 找到 fcgi.conf 打开
然后找到 fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
更改成:fastcgi_param SERVER_SOFTWARE nginx; 即可
然后重启WEB服务 或者 重启服务器吧