【问题标题】:Nginx Rewrite subdomain url to top level domainNginx 将子域 url 重写为顶级域
【发布时间】:2014-10-04 05:48:54
【问题描述】:

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

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;
}
}

【问题讨论】:

    标签: nginx


    【解决方案1】:

    一般来说最好避免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;
        }
    }
    

    【讨论】:

    • 感谢您提出有趣的问题。
    猜你喜欢
    • 1970-01-01
    • 2012-03-05
    • 1970-01-01
    • 2017-11-13
    • 2014-01-13
    • 1970-01-01
    • 2016-03-27
    • 1970-01-01
    • 2020-02-03
    相关资源
    最近更新 更多