Nginx将子域名重写为顶级域名

时间:2014-10-02 17:25:10

标签: nginx

我需要能够将以下子域名重定向到顶级域名,如下所示:

bie.husky.com/login ----> bie.husky.com

我的nginx配置中有以下代码,在重定向时似乎没有消除'/ login'部分......

server {
listen 80;
server_name bie.husky.com;

   set $my_var 0;
   if ($host = 'bie.husky.com/login') {
   set $my_var 1;
}

     if ($my_var = 1) {
     rewrite ^ http://bie.husky.com redirect;
}


  location / {
    root   /var/www/bie;
    index  index.html index.htm;
}
}

1 个答案:

答案 0 :(得分:0)

一般来说,如果可能,最好避免使用if :)。见:IfIsEvil。请尝试使用位置。您可能还想阅读:http://wiki.nginx.org/Pitfalls

server {
    listen 80;
    server_name bie.husky.com;
    root    /var/www/bie;
    index   index.html index.htm;
    try_files   $uri $uri/ =404;

    location = /login {
        return 302 $scheme://$host;
    }
}