Sobes.tech
Junior — Middle

É possível rodar vários websites na mesma porta usando Nginx?

sobes.tech IA

Resposta da IA

Não é possível iniciar vários sites web na mesma porta diretamente, pois a porta é um identificador único para a conexão de rede. No entanto, com Nginx, é possível configurar hosts virtuais (blocos de servidor) que permitem servir vários sites na mesma IP e porta (geralmente 80 para HTTP ou 443 para HTTPS).

Isto é conseguido diferenciando pelo nome do host (cabeçalho Host na requisição HTTP). O Nginx analisa o cabeçalho da requisição e redireciona para o site correspondente.

Exemplo de configuração para dois sites na mesma porta 80:

server {
    listen 80;
    server_name site1.example.com;
    root /var/www/site1;
}

server {
    listen 80;
    server_name site2.example.com;
    root /var/www/site2;
}

Dessa forma, vários sites funcionam na mesma porta, mas diferenciam-se pelo nome de domínio.