Entenda o que é o Nginx, como funciona o servidor web e veja o passo a passo para instalar, configurar sites e habilitar HTTPS em ambientes Linux.
Aprender como configurar Nginx é um passo importante para quem deseja colocar aplicações e sites em produção com mais desempenho e estabilidade.
O Nginx é um dos servidores web mais utilizados no mundo, principalmente em ambientes que exigem alta performance e escalabilidade. Ele é amplamente usado por empresas de tecnologia, aplicações SaaS, e-commerces e plataformas digitais.
Aqui você vai aprender o passo a passo para instalar o servidor, entender sua estrutura de configuração e realizar os primeiros ajustes para hospedar aplicações e sites.
O que é Nginx e para que serve?
O NGINX (pronunciado “engine-x”) é um servidor web de código aberto que pode ser usado como um servidor proxy reverso, servidor HTTP, servidor de e-mail e balanceador de carga. Ele é conhecido pelo alto desempenho e baixo consumo de recursos, sendo uma alternativa eficiente para hospedar aplicações modernas.
Criado inicialmente para resolver o problema de alto volume de conexões simultâneas em servidores web, o Nginx se tornou uma das tecnologias mais utilizadas em infraestrutura moderna. Atualmente, ele é utilizado por grandes plataformas digitais e também por empresas que precisam garantir estabilidade e velocidade no acesso aos seus sistemas.
Além disso, ele utiliza uma arquitetura baseada em eventos assíncronos, o que permite lidar com milhares de conexões simultâneas sem comprometer a performance do servidor. Por isso, ele é amplamente utilizado para:
- hospedar sites e aplicações;
- distribuir tráfego entre servidores;
- melhorar desempenho de aplicações web;
- atuar como camada de segurança e controle de acesso.
Outra vantagem importante é a possibilidade de integrar o Nginx com diferentes linguagens e tecnologias web, como PHP, Node.js e Python, o que permite utilizá-lo em diversos tipos de projetos e arquiteturas de software.
Em resumo, o NGINX funciona como um intermediário entre o cliente e o servidor, gerenciando as solicitações e respostas de forma eficiente para fornecer um desempenho rápido e confiável.
Pré-requisitos para configurar o Nginx em um servidor Linux
Antes de iniciar o processo de configurar Nginx no servidor, é importante garantir alguns requisitos básicos.
Você vai precisar de:
- um servidor com uma distribuição Linux (Ubuntu, por exemplo);
- acesso SSH ao servidor;
- permissões de administrador (root ou sudo);
- conexão com a internet para baixar os pacotes.
Também é recomendável ter um domínio configurado ou um endereço IP público associado ao servidor, caso o objetivo seja hospedar um site ou aplicação acessível pela internet.
Se você utiliza uma VPS da KingHost, o ambiente já oferece infraestrutura pronta para instalação de serviços como servidores web, bancos de dados e aplicações.
Como instalar o Nginx
Depois de garantir os pré-requisitos, o próximo passo é instalar o Nginx no servidor. Este exemplo utiliza Ubuntu, uma das distribuições Linux mais comuns em servidores.
O Ubuntu possui repositórios oficiais que permitem instalar o Nginx de forma simples utilizando o gerenciador de pacotes APT. Esse método garante que o servidor seja instalado com todas as dependências necessárias para funcionar corretamente.
O processo em geral é parecido em outras distribuições, você irá usar, por exemplo, o gerenciador de pacotes da distribuição que estiver usando ou até mesmo compilar o Nginx a partir de seu código-fonte.
1. Conecte-se ao servidor via SSH
Abra o terminal e execute:
ssh root@IP_DO_SERVIDOR
Digite a senha para acessar o servidor.
2. Atualize os pacotes do sistema
Antes da instalação, atualize os repositórios:
apt update
3. Instale o Nginx
Agora execute:
apt install nginx
O sistema irá baixar e instalar o nginx servidor web automaticamente.
4. Verifique se o Nginx foi instalado
Para conferir a versão instalada:
nginx -v
Leia também: Como configurar servidor VPS na KingHost?
Como posso verificar se o Nginx está funcionando?
Para verificar se o servidor está ativo, execute:
systemctl status nginx
Se o Nginx estiver funcionando corretamente, o status aparecerá como active (running).
Caso não esteja ativo, você pode iniciar o serviço com:
systemctl start nginx
Outra forma de verificar é acessar o IP do servidor no navegador. Se o Nginx estiver funcionando, a página padrão do servidor será exibida.
Estrutura de configuração do Nginx
Depois de instalar o servidor, é importante entender a estrutura de configuração do Nginx.
No Linux, os principais arquivos ficam em: /etc/nginx
Os diretórios mais importantes são:
- nginx.conf: arquivo principal de configuração do servidor;
- sites-available: onde ficam os arquivos de configuração de cada site;
- sites-enabled: onde ficam os sites ativos no servidor.
O arquivo nginx.conf define configurações globais do servidor, como número de processos, limites de conexões e parâmetros de desempenho. Já os diretórios sites-available e sites-enabled permitem organizar diferentes projetos dentro do mesmo servidor, ativando ou desativando configurações conforme necessário.
Esse modelo permite organizar múltiplos sites dentro do mesmo servidor, facilitando a gestão de ambientes com vários projetos.
Leia também: Tipos de VPS: entenda qual o melhor para sua máquina
Como configurar um site no Nginx
Depois de instalar o servidor e entender sua estrutura de configuração, o próximo passo é configurar um site.
No Nginx, cada site ou aplicação é configurado por meio de um bloco chamado server, que define como o servidor deve responder às requisições de um domínio ou endereço IP específico. Esse bloco permite definir diretórios de arquivos, regras de roteamento e parâmetros de segurança.
1. Criar o diretório do site
Primeiro, crie a pasta onde os arquivos do site serão armazenados:
mkdir -p /var/www/meusite
Esse diretório será utilizado como raiz do site (document root), ou seja, o local onde o Nginx irá buscar os arquivos HTML, CSS, JavaScript ou outros recursos da aplicação.
2. Criar o arquivo de configuração do site
Agora crie o arquivo de configuração dentro do diretório sites-available:
nano /etc/nginx/sites-available/meusite
Adicione uma configuração básica:
server {
listen 80;
server_name meusite.com www.meusite.com;
root /var/www/meusite;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
Nesse exemplo, o Nginx será configurado para escutar conexões HTTP na porta 80 e servir os arquivos armazenados no diretório /var/www/meusite. O parâmetro server_name define qual domínio será associado a essa configuração, nesse caso o site está sendo configurado e poderá ser acessado através das urls “meusite.com” ou “www.meusite.com”.
Exemplo de configuração de site com HTTPS no Nginx
Atualmente, a maioria dos navegadores prioriza e até limita o acesso a sites que não utilizam HTTPS. Por isso, além da configuração básica em HTTP, é fundamental configurar o servidor para utilizar certificado SSL e comunicação criptografada na porta 443.
Após gerar ou instalar um certificado SSL no servidor, é possível configurar o Nginx para utilizar HTTPS. Caso você utilize serviços da KingHost, veja o passo a passo para gerar o certificado gratuito com o guia Como instalar o certificado SSL Lets Encrypt.
A configuração básica de um site com HTTPS no Nginx pode ficar assim:
server {
listen 443 ssl;
server_name meusite.com www.meusite.com;
root /var/www/meusite;
index index.html index.htm;
ssl_certificate /etc/letsencrypt/live/meusite.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/meusite.com/privkey.pem;
location / {
try_files $uri $uri/ =404;
}
}
Nesse exemplo:
- listen 443 ssl define que o servidor irá responder conexões HTTPS.
- ssl_certificate indica o caminho do certificado digital.
- ssl_certificate_key aponta para a chave privada associada ao certificado.
Também é recomendado configurar um redirecionamento automático de HTTP para HTTPS, garantindo que todos os acessos utilizem conexão segura.
server {
listen 80;
server_name meusite.com www.meusite.com;
return 301 https://$host$request_uri;
}
Com essa configuração, qualquer acesso feito via HTTP será automaticamente redirecionado para a versão segura do site.
Depois de adicionar a configuração, não esqueça de testar e recarregar o Nginx:
nginx -t
systemctl reload nginx
3. Ativar o site
Para ativar o site, crie um link simbólico no diretório sites-enabled:
ln -s /etc/nginx/sites-available/meusite /etc/nginx/sites-enabled/
Esse processo é importante porque o Nginx só carrega configurações presentes no diretório sites-enabled. Assim, é possível manter vários arquivos prontos em sites-available e ativá-los apenas quando necessário.
4. Testar a configuração
Antes de reiniciar o servidor, teste se não há erros na configuração:
nginx -t
Esse comando valida a sintaxe de todos os arquivos de configuração do Nginx e ajuda a evitar que o servidor pare de funcionar devido a erros de configuração.
Se estiver tudo correto, recarregue o serviço:
systemctl reload nginx
Problemas comuns ao configurar Nginx
A maioria dos erros está relacionada a configurações incorretas, permissões de arquivos ou conflitos de portas no sistema. Veja alguns dos problemas mais comuns:
Erro de sintaxe na configuração
Sempre valide as configurações antes de reiniciar o servidor: nginx -t. Esse comando indica exatamente em qual arquivo e linha ocorreu o erro, facilitando a correção da configuração.
Porta HTTP em uso
Se a porta 80 estiver ocupada, o Nginx não conseguirá iniciar corretamente. Esse problema pode ocorrer quando outro servidor web, como Apache, já está utilizando a mesma porta no sistema.
Aprender como configurar Nginx é um passo importante para quem trabalha com infraestrutura web, desenvolvimento ou hospedagem de aplicações.
Se você pretende rodar aplicações ou sites com Nginx, contar com uma infraestrutura estável é essencial para garantir desempenho e disponibilidade.
Com o VPS da KingHost, você pode configurar servidores web com total controle sobre o ambiente, utilizando tecnologias modernas como Nginx, bancos de dados e aplicações escaláveis.
Conheça as soluções de VPS da KingHost e descubra como criar ambientes de hospedagem mais seguros, rápidos e preparados para o crescimento do seu projeto.
O que você achou deste conteúdo?