Como definir dois servidores em IPs diferentes no nginx?

1

Aqui está o problema: Eu tenho dois domínios que apontaram para dois IPs disponíveis em um servidor. Diga:

siteone.com apontou para 1.2.3.4 sitetwo.com apontou para 1.2.3.5

O que eu fiz para configurar o nginx vhosts foi colocar

server {
        listen    site1.com:80; # 
        server_name   site1.com www.site1.com;

no arquivo vhost1 e

server {
        listen    site2.com:80; # 
        server_name   site2.com www.site2.com;

em um arquivo vhost2 (separado). Os dois arquivos vhost são replicações exatas que esperam os caminhos site1 e site2, é claro. E vhost1 está funcionando bem por conta própria.

No entanto, depois de reiniciar o nginx, recebo este erro:

Restarting nginx: the configuration file /etc/nginx/nginx.conf syntax is ok [emerg]: bind() to 1.2.3.5:80 failed (99: Cannot assign requested address) configuration file /etc/nginx/nginx.conf test failed

Quando coloco

server {
        listen   *:80; # 
        server_name   site2.com www.site2.com;

No site2 vhost, o nginx reinicia sem erro, mas não renderiza páginas no caminho site2.

Estou confuso e agradeço sua ajuda.

    
por alfish 10.09.2012 / 21:02

1 resposta

5

Tente isto:

server {
    listen    1.2.3.4:80; # 
    server_name   site1.com www.site1.com;
    ...
}

server {
    listen    1.2.3.5:80; # 
    server_name   site2.com www.site2.com;
    ...
}
    
por 10.09.2012 / 21:07