首页  >  问答  >  正文

301重定向 - nginx二级域名重定向到目录

是二级域名重定向到目录,因为放弃二级域名,所以要重新301下。

比如jianfei.xxx.com重新定向到www.xxx.com/jianfei

另外就是www要除外,怎么写?

世界只因有你世界只因有你2713 天前658

全部回复(2)我来回复

  • PHP中文网

    PHP中文网2017-05-16 17:19:35

    if ($host = 'jianfei.xxx.com' ) {
         rewrite ^/(.*)$ http://www.xxx.com/jianfei/ permanent;
    }

    ------------------修改一下--------
    题主说jianfei是个变量,所以上面的方法不行。
    考虑是否可以建两个配置文件
    www.xxx.com.conf,不需要rewrite

    server {
        listen       80;
        server_name  www.xxx.cn xxx.cn;
        

    other.xxx.com.conf,专门用来rewrite到www域名

    server {
        listen       80;
        server_name  ~^(.*).xxx.com$;
        set $sub_name ;
        #if ($sub_name ~* (jianfei|gongjingmilan|others) ){#如果是部分子域名要跳转可以枚举或正则匹配,全部子域名都跳可以注释掉
            rewrite ^/(.*)$ http://www.xxx.com/$sub_name/;
        #}

    测试可行

    回复
    0
  • 習慣沉默

    習慣沉默2017-05-16 17:19:35

    非常感谢大牛,这个方法比较好,解决了

    回复
    0
  • 取消回复