百度 | 神马 | 搜狗 | 技术文档 | 学习资料分享 - 记录帝国CMS及运维技术的点点滴滴
你的位置:首页 > 实用IT技术 » 正文

301重定向之所有二三级子域名跳转到带www的主站

发布时间:2021-01-29

作品分类:301  重定向  nginx

这个所有子域名301跳转到www主站场景:

服务器为Nginx,宝塔面板,之前有使用泛域名 a.5d.ink , 5d.ink等域名,现在启用后需要将之前这若干个域名301跳转到www.5d.ink。那么如何操作呢?
Nginx跳转代码如下图所示:


代码如下:

location /
{
  if ($host != 'www.5d.ink' )
  {
    rewrite ^/(.*) http://www.5d.ink/$1 redirect;
  }
     try_files $uri $uri/ /index.php?$args;
}

点评:代码的意思大致是判断host是否等于www.5d.ink,如果不是则跳转到www.5d.ink这个页面,同时附带域名后面的URL地址参数。
如果书写格式错误,很容易出现死循环(多次重定向)的错误。

最后附上不带www的5d.ink站跳转到www.5d.ink的代码:


location / {
    if ($http_host ~* "^(5d\.ink)(:80)?"){
    rewrite ^/(.*) http://www.5d.ink/$1 redirect;
  }
}


点评:复制过去时,注意对比两端代码的区别,后者的. 使用了转义符\
而前者是不带转义符的,写错了就是个死循环噢,切记!

 

Top