Olá, sou o Ligeiro e neste post vou explicar como configurar múltiplos sites usando NGINX.
Começarei conectando no meu domínio usando o IP, que está hospedado em uma máquina Ubuntu na Amazon. Para melhorar a legibilidade, vou alterar o hostname da máquina usando o comando sudo hostnamectl set-hostname <nome-desejado>
.
Agora, vamos configurar o NGINX para servir sites diferentes para cada domínio. Primeiro, precisamos instalar o Node.js na máquina, para hospedar nossas aplicações. Baixaremos o binário do Linux na versão mais recente, usando o comando wget <link-do-arquivo>
. Depois, descompactaremos e movemos o arquivo para uma pasta na raiz do sistema, como /root/Node
.
Para garantir que o Node esteja sempre disponível, adicionaremos o diretório binário do Node às variáveis de ambiente, editando o arquivo /etc/environment
e adicionando a seguinte linha: NODE_HOME=<caminho-para-o-node>
.
Agora, criei uma aplicação de exemplo em Node.js, app1.js
, que será executada na porta 5000. Para deixar a aplicação rodando em background, usaremos o comando nohup node app1.js &
.
Para configurar o NGINX, precisamos criar um arquivo de configuração para cada site no diretório /etc/nginx/sites-available/
. O arquivo deve conter a seguinte estrutura básica:
server {
listen 80;
server_name <nome-do-seu-site>;
location / {
proxy_pass http://localhost:<porta-da-sua-aplicacao>;
}
}
Após criar o arquivo, precisamos criar um link simbólico para ele no diretório /etc/nginx/sites-enabled/
usando o comando ln -s /etc/nginx/sites-available/<seu-arquivo> /etc/nginx/sites-enabled/
.
Por fim, reinicie o serviço NGINX usando o comando sudo systemctl restart nginx
.
Repita o processo para cada site que deseja hospedar, alterando o nome do site e a porta da aplicação.
Este é o processo básico para configurar o NGINX como proxy reverso para aplicativos Node.js. Espero que tenha gostado do tutorial e não esqueça de compartilhar e se inscrever no canal! Até a próxima.
Esse blog post foi escrito utilizando AI ( especificamente whisper-large
) com o projeto https://github.com/S4mpl3r/youtube2blog.
O vídeo abaixo foi transcrito e utilizado como base para gerar o texto: