nginx二级域名重定向到目录

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

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

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

阅读 10.3k
2 个回答
if ($host = 'jianfei.xxx.com' ) {
     rewrite ^/(.*)$ http://www.xxx.com/jianfei/$1 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 $1;
    #if ($sub_name ~* (jianfei|gongjingmilan|others) ){#如果是部分子域名要跳转可以枚举或正则匹配,全部子域名都跳可以注释掉
        rewrite ^/(.*)$ http://www.xxx.com/$sub_name/$1;
    #}

测试可行

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题