Servidor & DevOps 3 visualizações

Como configurar Nginx como proxy reverso na frente de uma aplicação Node.js

Ver no WHMCS

Como configurar Nginx como proxy reverso na frente de uma aplicação Node.js

Olá, amigo(a) desenvolvedor(a)! Seja bem-vindo(a) ao seu guia de mão na massa, feito com carinho pelo Sensei da GeHost — aqui para te ajudar a dominar o mundo da hospedagem com tranquilidade e segurança. 🌟

Se você tem uma aplicação Node.js rodando em seu servidor e quer que ela seja acessada pelo domínio do seu site com mais velocidade, segurança e controle, o Nginx como proxy reverso é a solução perfeita. Vamos passo a passo, com calma, como se fosse um chá de menta com um amigo.

O que é um proxy reverso?

Imagine o Nginx como um porta-voz inteligente. Ele recebe todas as requisições do usuário (por exemplo, alguém digitando seu domínio no navegador), decide para onde mandar o pedido (para sua aplicação Node.js) e devolve a resposta como se fosse ele mesmo. É como se você tivesse um atendente no balcão que sabe exatamente para onde encaminhar cada cliente.

Dica do Sensei: Usar Nginx como proxy reverso protege sua aplicação Node.js de acesso direto, aumenta a performance e permite gerenciar múltiplas aplicações com apenas um domínio.

Pré-requisitos

Antes de começar, certifique-se de que:

  • Seu plano na GeHost permite acesso ao terminal (SSH) — verifique no painel do cliente.
  • Sua aplicação Node.js já está rodando em uma porta específica (ex: 3000).
  • Seu domínio já está apontando para o servidor da GeHost (via DNS).

Se você não tem certeza sobre algum desses pontos, entre em contato com nosso suporte — estamos aqui para te ajudar, de verdade.

Passo a passo: configurando o Nginx como proxy reverso

  1. Acesse seu servidor via SSH

    Use um cliente como Putty (Windows) ou o terminal do Linux/macOS. Conecte-se ao seu servidor usando as credenciais fornecidas no painel da GeHost (painel.gehost.com.br).

  2. Verifique se o Nginx está instalado

    Execute este comando no terminal:

    nginx -v

    Se aparecer uma versão, tudo certo! Se não, o Nginx pode não estar disponível no seu plano cPanel. Nesse caso, entre em contato com o suporte para verificar se há suporte a configurações avançadas.

  3. Edite o arquivo de configuração do Nginx

    Abra o arquivo de configuração do site (geralmente em /etc/nginx/sites-available/seu-domínio). Se não existir, crie um:

    sudo nano /etc/nginx/sites-available/seu-domínio

    Substitua seu-domínio pelo nome do seu domínio (ex: meusite.com.br).

  4. Insira a configuração do proxy reverso

    Cole o seguinte conteúdo no arquivo:

    server {
        listen 80;
        server_name seu-domínio.com.br;
    
        location / {
            proxy_pass http://127.0.0.1:3000;
            proxy_http_version 1.1;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }
        

    ⚠️ Atente-se ao número da porta (3000) — ele deve ser o mesmo em que sua aplicação Node.js está rodando.

  5. Ative a configuração

    Link o arquivo para o diretório sites-enabled:

    sudo ln -s /etc/nginx/sites-available/seu-domínio /etc/nginx/sites-enabled/
  6. Teste a configuração

    Antes de reiniciar, valide se não há erros:

    sudo nginx -t

    Se aparecer syntax is ok e test is successful, está tudo certo!

  7. Reinicie o Nginx

    Após o teste, reinicie o serviço:

    sudo systemctl restart nginx
  8. Verifique se sua aplicação está acessível

    Abra seu navegador e acesse https://seu-domínio.com.br (ou http:// se não tiver SSL).

    Se a aplicação aparecer, parabéns! Você acabou de configurar um proxy reverso com sucesso. 🎉

Dicas do Sensei

  • Se precisar de HTTPS, use o certificado SSL do cPanel (acessível em SSL/TLS Certificates) — ele é gratuito e automático.
  • Evite usar portas como 80 ou 443 diretamente na sua aplicação Node.js. Deixe o Nginx lidar com isso.
  • Se sua aplicação Node.js não estiver rodando, use pm2 ou outro gerenciador para mantê-la ativa. O Sensei recomenda pm2 start app.js após o deploy.

Importante: A GeHost oferece suporte técnico para questões de hospedagem, mas configurações avançadas como Nginx, SSH e gerenciamento de processos são responsabilidade do cliente. Caso precise de ajuda, entre em contato com nosso suporte — estamos aqui para te ajudar com respeito e paciência.

Conclusão

Configurar o Nginx como proxy reverso pode parecer um desafio no começo, mas com paciência e um passo de cada vez, você domina. Lembre-se: cada linha de código é uma escolha consciente, e cada configuração é um passo rumo à sua liberdade digital.

Se este guia te ajudou, compartilhe com alguém que também quer aprender. E lembre-se: você não está sozinho. A GeHost está aqui com você, sempre.

Com carinho,
Sensei da GeHost
G e Soluções e Eventos LTDA
CNPJ: 46.647.904/0001-04

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.