Instale o Nginx com blocos de servidor (hosts virtuais) no Debian 10
Nginx é um servidor web de alto desempenho muito popular que combina o poder de proxy reverso, balanceamento de carga, cache e muito mais. Dependendo de como estiver configurado, ele pode atuar como proxy reverso e também como balanceador de carga para servidores HTTP/HTTPS.
O servidor web Nginx tem uma capacidade fenomenal de atender milhares de conexões simultâneas e isso o torna o servidor web mais rápido, alimentando mais de metade dos sites mais movimentados do mundo. Isso inclui Netflix, DuckDuckGo e DropBox, para mencionar apenas alguns.
Leia também: Como instalar o Apache com hosts virtuais no Debian 10
Neste tutorial, orientaremos você nas etapas de instalação do Nginx com hosts virtuais para hospedar vários domínios em um servidor Debian 10.
Pré-requisitos
Antes de começarmos, certifique-se de que os seguintes requisitos sejam atendidos:
- Uma instância do Debian 10.
- Um Nome de domínio totalmente qualificado (FQDN) apontando para o servidor.
- Neste guia, usamos o domínio
linux-console.net
apontando para um sistema Debian 10 com endereço IP 192.168.0.104. - Uma boa conexão com a internet.
Etapa 1: atualize o repositório de pacotes Debian 10
Antes de mais nada, precisamos atualizar nosso repositório de pacotes local para as versões mais recentes. Para fazer isso, faça login como usuário normal com privilégios sudo e execute o comando abaixo.
sudo apt update -y
Etapa 2: Instale o Nginx no Debian 10
Como o Nginx está presente nos repositórios do Debian, podemos confortavelmente prosseguir e instalá-lo usando o gerenciador de pacotes apt que vem com o Debian.
sudo apt install nginx -y
Etapa 3: verificar o status do servidor Web Nginx
Se você não encontrou erros, o servidor web Nginx foi instalado com sucesso. É prudente verificar o status do servidor web antes de fazer outras configurações.
Para verificar o status do Nginx, execute:
systemctl status nginx
Se o servidor web estiver instalado e funcionando, você receberá a notificação abaixo.
Se você quiser reiniciar o servidor da Web Nginx, execute o comando.
systemctl restart nginx
Para parar o Nginx, emita o comando.
systemctl stop nginx
Para iniciar o servidor web, execute.
systemctl start nginx
Para configurar o servidor da Web Nginx para iniciar na inicialização.
systemctl enable nginx
Leia também: 10 comandos Nginx mais usados que todo usuário Linux deve conhecer
Etapa 4: configurar o firewall para abrir a porta Nginx
Com o Nginx instalado e funcionando com sucesso, precisamos permitir o acesso web ao serviço, especialmente para usuários externos. Se você tiver o firewall UFW ativado, será necessário permitir o acesso HTTP através do firewall.
Para conseguir isso, execute o comando.
sudo ufw allow 'Nginx HTTP'
Em seguida, recarregue o firewall para efetuar as alterações.
sudo ufw reload
Ótimo, agora você pode verificar se o HTTP é permitido através do firewall executando.
sudo ufw status
No trecho acima, podemos ver claramente que o Nginx HTTP foi permitido através do firewall UFW.
Etapa 5: acessando o servidor Web Nginx
Até agora fizemos as configurações básicas para colocar o Nginx em funcionamento. Para acessar o servidor web através do navegador web, procure o endereço IP do servidor conforme mostrado.
http://server-IP-address
Esta é uma confirmação de que o Nginx está instalado e funcionando.
Etapa 6: Configurando blocos de servidor Nginx no Debian 10
Esta é uma etapa opcional e útil quando você deseja hospedar vários domínios em um servidor da Web Nginx. Para que isso funcione, você precisa ter um nome de domínio apontado para o seu servidor Debian.
Para esta seção, usaremos o nome de domínio linux-console.net
cujo registro A
está apontado para o IP do servidor 192.168.0.104.
Quando você aponta o nome de domínio para o endereço IP do seu servidor, o nome do domínio mudará em breve e apontará para o seu servidor web, conforme mostrado.
Vamos agora criar um bloco de servidor.
Primeiramente, vamos criar um diretório para nosso domínio conforme mostrado.
sudo mkdir -p /var/www/html/linux-console.net
Em seguida, atribua a propriedade do arquivo necessária conforme mostrado.
sudo chown -R $USER:$USER /var/www/html/linux-console.net
Em seguida, atribua permissões de leitura e execução ao grupo e aos usuários públicos, conforme mostrado.
sudo chmod -R 755 /var/www/html/linux-console.net
Vamos agora criar uma página da web de exemplo index.html
simples usando o editor de texto vim.
sudo vim /var/www/html/linux-console.net/index.html
Adicione algum conteúdo de amostra ao arquivo. Isso será exibido no navegador.
<html>
<head>
<title>Welcome to Linux geeks</title>
</head>
<body>
<h1>Success! Welcome to your new server block on Tecmint Nginx Web Server !</h1>
</body>
</html>
Salve e saia do editor
Para que esse conteúdo seja veiculado, um bloco de servidor precisa ser criado.
Vamos criar um bloco de servidor
vim /etc/nginx/sites-available/linux-console.net
Copie e cole o seguinte conteúdo no arquivo de bloco do servidor.
server {
listen 80;
listen [::]:80;
root /var/www/html/linux-console.net;
index index.html index.htm index.nginx-debian.html;
server_name linux-console.net linux-console.net;
location / {
try_files $uri $uri/ =404;
}
}
Certifique-se de atualizar o nome de domínio linux-console.net com seu próprio nome de domínio.
Para ativar ou habilitar o arquivo de bloco do servidor, crie um link simbólico conforme mostrado.
sudo ln -s /etc/nginx/sites-available/linux-console.net /etc/nginx/sites-enabled/
Para verificar se todas as configurações no Nginx estão configuradas corretamente, execute.
sudo nginx -t
Ótimo, estamos prontos para ir! Finalmente reinicie o Nginx.
sudo systemctl restart nginx
Vá para o seu navegador e atualize e, se tudo correr bem, o navegador deverá estar servindo a página da web de bloqueio do servidor, conforme mostrado.
Etapa 7: acessando os arquivos de log do Nginx
Para acessar arquivos de registro sobre solicitações feitas ao seu servidor, acesse o arquivo abaixo.
sudo vim /var/log/nginx/access.log
Caso você encontre erros no seu servidor da Web Nginx, examine o arquivo em busca de erros.
sudo vim /var/log/nginx/error.log
Conclusão
Neste guia, você aprendeu como instalar o Nginx em sua instância do Debian 10 e configurá-lo ainda mais para suportar domínios adicionais. Esperamos que você tenha achado este guia esclarecedor. Seu feedback será apreciado.