resolvedor de domínio NginX

3

Tendo o nginx instalado e o Apache na porta 8080. O problema é: estou construindo site para o domínio de produção (digamos mysite.com ) e tenho tudo configurado para esse domínio. Eu mudo o meu arquivo de hosts do Windows para redirecionar mysite.com para o IP do servidor e funcionou bem ... antes de instalar o nginx. O Nginx resolve domínios em si e (obviamente) não pode resolver o domínio mysite.com

O log diz:

2012/02/07 07:35:29 [error] 11758#0: *1 mysite.com could not be resolved (110: Operation timed out), client: 89.112.11.xx, server: myssite.com, request: "GET / HTTP/1.1", host: "mysite.com"

Bem, então tento alterar o arquivo hosts no meu servidor. Eu faço isso no / etc / hosts:

127.0.0.1 mysite.com

Ok, vamos tentar! Se isso entrou em vigor, pelo menos o wget deve achá-lo correto, certo? Tanto quanto eu tenho Apache na porta 8080, eu posso wget a página principal:

wget mysite.com

Faz o download da página correta. Isso significa que / etc / hosts faz bem.

Mas o ngnix ainda não resolve! Mesmo depois que eu reiniciei o servidor. Por quê? Tem seu próprio resolvedor ou o quê? Como fazer isso funcionar?

    
por Dmitry 07.02.2012 / 19:23

2 respostas

4

O nginx não usa o arquivo hosts para resolver o domínio. Se você usar nomes de domínio para listen , proxy_pass ou fastcgi_pass , poderá usar o endereço IP ou localhost :

listen localhost:80;
server_name mysite.com;
...
location / {
    proxy_pass http://localhost:8080;
}
    
por 08.02.2012 / 00:21
4

você pode usar o dnsmasq no 127.0.0.1 para resolver a partir do / etc / hosts e colocar o resolvedor 127.0.0.1 na configuração do nginx

    
por 07.03.2014 / 08:01