server_name parece ser ignorado no nginx

3

Eu tenho dois domínios configurados no nginx.conf. Ambos estão usando SSL com seus próprios certificados e proxy para o Apache.

No entanto, o segundo domínio é completamente ignorado e o nginx sempre é resolvido para o primeiro domínio. Não consigo ver o que está no problema com essa configuração, tendo definido o server_name em cada caso corretamente (até onde eu posso ver):

http {
    include       mime.types;
    default_type  application/octet-stream;

    keepalive_timeout  65;

    upstream site {
        # real IP addresses masked
        server xx.xxx.x.xxx;
        server xx.xxx.x.xxx;
    }


    server {
        # this domain always works
        listen       443;
        server_name  *.first-site.com;

        ssl                  on;
        ssl_certificate      /var/ssl/first-site.crt;
        ssl_certificate_key  /var/ssl/first-site.key;

        location / {
            access_log off;
            proxy_connect_timeout 15;
            proxy_next_upstream error;
            proxy_pass http://site;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-Protocol https;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_redirect off;
        }

    }

    server {
        # this domain is ignored, always resolves to first-site.com
        listen       443;
        server_name  *.second-site.com;

        ssl                  on;
        ssl_certificate      /var/ssl/second-site.crt;
        ssl_certificate_key  /var/ssl/second-site.key;

        location / {
            access_log off;
            proxy_connect_timeout 15;
            proxy_next_upstream error;
            proxy_pass http://site;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-Protocol https;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_redirect off;
        }

    }

}
    
por user46171 18.06.2010 / 17:37

1 resposta

2

Você precisa ajustar sua diretiva Listen para ouvir um IP e um número de porta.

Listen 1.2.3.4:443

Atualmente, o SSL precisa ter IPs separados (ou portas separadas)

    
por 18.06.2010 / 17:57

Tags