Nginx retorna o padrão html para alguns usuários

1

Eu sou novato em administração de sistemas. Eu configurei o web-server com nginx como proxy e gunicorn como um servidor python. O site funciona com sucesso no domínio link . Mas para alguns usuários, ele retorna Welcome to nginx! . Eu tenho dois arquivos em sites disponíveis ( default , django ). Esta é a configuração para django :

server {
    listen 80;
    server_name victorywow.com; #ip,^
    access_log  /var/log/nginx/access.log;
    error_log /var/log/nginx/error-server.log;

    location /static/ {
        root /opt/django/wow/;
        expires 30d;
    }

    location /media/ {
        root /opt/django/wow/;
    }

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $server_name;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
  }

Meu gunicorn está sendo executado na porta 8000. Eu não entendo porque alguns usuários podem usar o site e alguns usuários não podem. Muito obrigado!

    
por Kyrylo Romantsov 06.07.2017 / 09:58

1 resposta

2

Seu server_name corresponde apenas a victorywow.com , mas www.victorywow.com também resolve para o mesmo servidor. Como www.victorywow.com não é correspondido por server_name deste bloco de servidor, ele é correspondido pela configuração padrão, que mostra a página de destino nginx padrão.

Use algo como:

server_name victorywow.com www.victorywow.com;

É fácil ir para www.victorywow.com em vez de victorywow.com : digite foo e pressione Ctrl Digite e a maioria dos navegadores o levará para www.foo.com .

    
por muru 06.07.2017 / 10:20