nginx子目录301重定向到其他域名URL

Aug 22nd Mon, 2011/JiaJieChan/折腾/3,340 阅读/2 评论

今天找了找网上的nginx 301代码,发现不是不生效就是错误,几经修改才成功。下面发一个基于nginx的子目录301到其他域名(URL)的规则。作用是例如访问http://blog.jiajieit.net/gq/ (有杠和没杠是不同的,下面的代码中可以看出来),自动301到 http://gq.jiajieit.net 。

下面我来解释一下代码,只是基本的代码。下面“location ~* ^/gq/ {” 里的/gq/是指访问 http://当前域名/gq/ 跳转到新域名的意思,反之把后面的杠去掉就是访问http://当前域名/gq 跳转到新域名的意思。

“rewrite ^/gq/(.*)$”中的/gq/同上。中间的域名是指要跳转的域名或URL。前面的 $ 是指原地址后面的所有路径,后面的 $1 同上,也就是说跳转后所有路径不变,只是前面的域名变了。

location ~* ^/gq/ {
rewrite ^/gq/(.*)$ http://gq.jiajieit.net/$1 permanent;
}

下面说一下使用方法:

进入Linux,找到/usr/local/nginx/conf下的nginx.conf,把代码插入到server片区的location之间,推荐使用SFTP上传和下载。

按上面的格式添加并保存后上传。

最后重启一下nginx;

/usr/local/nginx/sbin/nginx -s  reload

声明: 本文采用 BY-NC-SA 协议进行许可. 转载请出示版权信息.
  1. Mar 16th, 2014 at 12:12 / #Url

    用上了,很不错的教程。

  2. Mar 6th, 2013 at 18:59 / #Url

    哈哈,我定向一个到子目录试试,我想做了个音乐分享网站,域名很好。
    所以最近也要操作一下另一个域名定向到子目录,但感觉有难度啊,有点晕。

  1. 本文目前尚无任何 trackbacks 和 pingbacks.
支持使用Gravatar头像

JiaJieChan提醒您: 要回复某人的评论,请将鼠标移动到那条评论,评论右边就会出现Replay字样(一定是要鼠标指针中的评论),在评论框中出现的的后面下一行填写评论提交即可.被回复者将收到邮件通知噢; 要是想直接对本文评论请直接在评论框留言即可,然后点提交.