您的位置:首页 > 运维架构 > Nginx

nginx实现301域名跳转

2012-12-20 13:41 381 查看
关于域名跳转可以有多种方法:

1.在dns中设置URL重定向;

2.修改程序实现;

3.修改服务器配置;

第一种方法:我的dns使用的是免费的dnspod,需网站接入1个月后才可以使用URL重定向服务;

第二种方法:据说对SEO不好,果断放弃;

第三种方法:我的网站服务器使用的是nginx,下面介绍nginx实现域名重定向的两种方法。

①单独对需要跳转的域名在server写重定向

server{
listen       80;
server_name  *.wphones.cn wphones.cn www.aiphones.cn  *.aiphones.cn aiphones.cn;
access_log off;
rewrite ^/(.*)$ http://www.wphones.cn/$1 permanent;
}

server {
listen       80;
server_name  www.wphones.cn;
...
}

②对两个域名做一个host判断,在server_name下添加

server {
listen       80;
server_name  www.pdavip.com test.pdavip.com;
if ($host != ‘test.pdavip.com’) {
rewrite ^/(.*)$ http://www.fashao.me/$1 permanent;
}
...
}

需要注意的是if条件中的域名单引号。应该是中文的单引号,英文单引号会出现下面的错误提示。

我想许多配置不成功的朋友就是这个原因引起的。





关于nginx重定向规则请参考:

http://www.jefflei.com/post/1015.html

如果这篇文章帮助到了你,请不要吝啬你的回复!
本文出自 “熟能生巧” 博客,请务必保留此出处http://bbaobelief.blog.51cto.com/3838275/1095095
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: