如何在nginx中配置两个虚拟主机才能正常工作

时间:2013-07-05 13:25:54

标签: redirect nginx

我有两个要求:

  1. < * anything_except_foo *> .mydomain.com需要重定向到https => HTTPS://*.mydomain.com
  2. foo.mydomain.com需要单独工作
  3. 所以我有一个不应重定向的子域。

    这是我尝试过没有成功的事情,我读到现在建议不要使用if子句,所以我试图了解如何在没有它的情况下做到这一点,感谢任何提示

    http {
        # other stuff
    
        server {
            listen 80;
            return 301 https://*.mydomain.com;
            server_name *.mydomain.com
        }
        server {
            listen 80;
            server_name foo.mydomain.com
        }
    }
    

1 个答案:

答案 0 :(得分:1)

Nginx仍建议仅使用IF进行重写:

这是他们想要做的事情:

  

如果完全

,则禁用内部的非重写指令

只有当你在'如果是邪恶'的位置部分时 - 这是完整的阅读,以及他们为什么要在其他任何地方禁用它的行动(除了你在哪里使用它)

http://wiki.nginx.org/IfIsEvil

去吧,给自己留下一个巨大的麻烦:)