DEV Community

Monica Hillman for Magalu Cloud

Posted on

Hospedando um site estático com Nginx na Magalu Cloud

Hospedar um site estático pode ser um processo que exige atenção a detalhes, mas com as ferramentas certas, a jornada se torna mais direta. Neste guia, vamos explorar como usar uma Máquina Virtual (VM) da Magalu Cloud e o Nginx, um servidor web potente, para implantar seu projeto e deixá-lo disponível para o público.

Este guia assume que você já tem sua conta na Magalu Cloud e os arquivos do seu projeto prontos em seu computador.

1. Acessando e Preparando a VM

Comece criando sua VM no painel da Magalu Cloud, garantindo que você adicione sua chave SSH. Para se conectar à instância, use o comando abaixo no seu terminal.

ssh usuario_da_vm@<IP_PÚBLICO_DA_SUA_VM> 
Enter fullscreen mode Exit fullscreen mode

2. Instalando o Nginx

Uma vez conectado à VM, o próximo passo é instalar o Nginx, que servirá os arquivos do seu projeto.

# Atualiza a lista de pacotes sudo apt update # Instala o Nginx sudo apt install nginx -y 
Enter fullscreen mode Exit fullscreen mode

Nginx (pronuncia-se "engine-ex") é um software de código aberto para servidor web. Mas ele é muito mais que isso: é também um proxy reverso, balanceador de carga e proxy de e-mail.

Em termos simples, o Nginx é o programa que pega os arquivos do seu site (como HTML, CSS e JavaScript) e os entrega para os navegadores de quem acessa o seu endereço, seja um IP ou um domínio. Ele faz esse trabalho de forma extremamente rápida e eficiente, especialmente com sites estáticos, que são puramente arquivos.

3. Transferindo os arquivos

A seguir, copie os arquivos do seu computador para a VM. Uma boa prática é transferi-los para o seu diretório de usuário e depois movê-los para o diretório final.

No seu terminal local, envie os arquivos para o diretório inicial (~/) da sua VM:

scp -r ./meu_projeto/* ubuntu@<IP_PÚBLICO_DA_SUA_VM>:~/ 
Enter fullscreen mode Exit fullscreen mode

O comando scp (secure copy) é uma ferramenta de linha de comando no Linux, macOS e outros sistemas Unix-like que permite a você copiar arquivos de forma segura entre computadores conectados a uma rede.

A grande vantagem do scp é que ele usa o protocolo SSH (Secure Shell) para a transferência. Isso significa que a comunicação é criptografada, garantindo que seus dados não sejam interceptados.

Agora, no terminal da VM, crie um diretório para o seu projeto e mova os arquivos para o local apropriado com o comando sudo.

sudo mkdir /var/www/meu_projeto sudo mv ~/index.html /var/www/meu_projeto/ sudo mv ~/styles.css /var/www/meu_projeto/ 
Enter fullscreen mode Exit fullscreen mode

4. Configurando o Nginx

O Nginx precisa de instruções para encontrar e servir seus arquivos. Para isso, vamos criar um arquivo de configuração para o seu site.

  • Crie o arquivo de configuração
sudo nano /etc/nginx/sites-available/meu_projeto 
Enter fullscreen mode Exit fullscreen mode
  • Cole o seguinte conteúdo
server { listen 80; server_name <IP_PÚBLICO_DA_SUA_VM>; root /var/www/meu_projeto; index index.html; location / { try_files $uri $uri/ =404; } } 
Enter fullscreen mode Exit fullscreen mode

Substitua pelo IP da sua VM. Salve e saia do editor.

  • Ative a configuração
sudo ln -s /etc/nginx/sites-available/meu_projeto /etc/nginx/sites-enabled/ sudo rm /etc/nginx/sites-enabled/default 
Enter fullscreen mode Exit fullscreen mode

5. Verificando e subindo o site

Para finalizar, valide a configuração do Nginx e reinicie o serviço para que as mudanças entrem em vigor.

sudo nginx -t sudo systemctl restart nginx 
Enter fullscreen mode Exit fullscreen mode

Seu site agora está disponível para visualização pelo IP público da sua VM.

Ao seguir este guia, você concluiu a implantação do seu site estático na Magalu Cloud. Este processo não apenas coloca seu projeto no ar, mas também oferece uma base sólida para futuros desenvolvimentos.

Top comments (0)