Redirecionando de um nginx para outro

8

Eu tenho dois servidores (A e B) com o NGINX. O servidor A está atendendo ao site antigo e o servidor B está exibindo um novo site. Atualizei meu DNS, mas é bem lento: no meu escritório, ainda vejo meu site antigo:

subdomain.site.com

Como posso redirecionar todas as solicitações do servidor A para esse subdomínio específico para o servidor B?

Agora, os dois são tratados com isso no NGINX:

server {
  listen 80;
  server_name subdomain.site.ru;
  root /var/www/subdomain/public;
  passenger_enabled on;
}
    
por fl00r 05.09.2011 / 12:09

1 resposta

11

Como os dois usam o mesmo server_name, você não pode fazer um redirecionamento simples.

Provavelmente, você pode fazer algum tipo de proxy, seguindo o seguinte procedimento no servidor antigo:

upstream newserver {
  server 172.16.0.1:80;  # this is new server, by IP address
}

server {
  listen 80;
  server_name subdomain.site.ru;
  location / {
    proxy_set_header Host $host;
    proxy_pass http://newserver;
  }
}

Portanto, basicamente, configure o servidor antigo para que ele passe todas as solicitações para o novo servidor. Claro, coloque qualquer configuração que você precisar para client_max_body_size e tudo mais.

    
por 05.09.2011 / 13:30