Iniciante Fundamentos
O bloco server
O bloco server define um site no Nginx. Em outros servidores isso é chamado de host virtual. Cada site tem o seu bloco.
Estrutura básica
Um bloco server fica dentro do contexto http:
http {
server {
listen 80;
server_name exemplo.com;
root /var/www/exemplo;
}
}
listen
A diretiva listen define em qual porta (e opcionalmente IP) o servidor escuta:
listen 80;
listen 443 ssl;
server_name
A diretiva server_name diz a qual domínio aquele bloco responde:
server_name exemplo.com www.exemplo.com;
Você pode listar vários domínios e usar curingas:
server_name *.exemplo.com;
Como o Nginx escolhe o server
Quando uma requisição chega, o Nginx olha a porta e o cabeçalho Host enviado pelo navegador. Ele compara com os server_name e escolhe o bloco que combina.
Resumo
O bloco server representa um site. Use listen para a porta e server_name para o domínio. O Nginx combina porta e host para escolher qual bloco atende cada requisição.