Nginx反向代理中文域名
前几天买了个中文域名,发现nginx似乎无法正确解析
最后发现中文域名在解析的时候,需要先转换为PunyCode
[转码]:http://www.webmasterhome.cn/tool/punycode.asp
中文域名分为两类:
1、一类是域名后缀为英文字母的国际中文域名和别国中文域名
比如:中文.com,中文.net,中文.biz,中文.cc,中文.hk,中文.tm,中文.tv,中文.tw;
2、一类是域名后缀为中文的纯中文国内中文域名
比如:中文域名.中国,中文域名.公司,中文域名.网络;
中文域名在解析的时候,需要先转换为 xn–fiq228c.com或xn–fiq228c.cn形式的ASCII码,这种编码称为PunyCode。
纯中文域名不被标准的解析服务器支持,要实现对这种纯中文域名的正确访问,ISP需要做相应的修改,以便能够正确解析中文域名。
同时CNNIC也提供了专用服务器,用户只要将浏览器的DNS设置指向这台服务器,它同样可以完成对纯中文域名的正确解析。
另外,考虑到现在有些ISP还没有做修改,而有些用户又不方便将DNS设置指向CNNIC提供的服务器,纯中文域名会被加上.cn后缀,即对每一个纯中文域名同时有两种形式:
纯中文域名和纯中文域名.CN
如:“中文域名.网络"和"中文域名.网络.CN”。这样即使ISP还没有做相应的修改,用户也可以正确使用中文域名。
在Nginx中如何反向代理
server {
listen 80;
server_name www.xxxx(PunyCode替换掉中文).com;
location / {
......
}
}