Como instalar WordPress em uma VPS Linux com Nginx
Este guia configura o WordPress em uma VPS Ubuntu 22.04 ou 24.04 com a pilha LEMP: Linux, Nginx, MariaDB e PHP-FPM. Um servidor com 2 vCPU e 2 GB de RAM é um bom ponto de partida; veja como escolher as especificações da VPS. Você pode implantar uma VPS na nuvem em poucos minutos e acompanhar o passo a passo. Substitua example.com pelo seu domínio e aponte primeiro o registro DNS A dele para o IP do servidor.
1. Atualize o servidor e libere o firewall
sudo apt update && sudo apt upgrade -y
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enableSe você ainda não protegeu o SSH, faça isso primeiro com o guia de hardening do SSH.
2. Instale Nginx, MariaDB e PHP
sudo apt install -y nginx mariadb-server php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl unzip curl
sudo mysql_secure_installation3. Crie o banco de dados
sudo mysqlCREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'USE_A_LONG_RANDOM_PASSWORD';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;4. Baixe o WordPress
cd /tmp && curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz
sudo mv wordpress /var/www/example.com
sudo chown -R www-data:www-data /var/www/example.com
cd /var/www/example.com && sudo -u www-data cp wp-config-sample.php wp-config.phpEdite o wp-config.php: defina DB_NAME, DB_USER e DB_PASSWORD com os valores acima e substitua as chaves de autenticação por novas, geradas pelo gerador oficial em https://api.wordpress.org/secret-key/1.1/salt/.
5. Configure o Nginx
Crie o arquivo /etc/nginx/sites-available/example.com:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.php;
location / { try_files $uri $uri/ /index.php?$args; }
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php-fpm.sock;
}
location ~ /\.ht { deny all; }
}sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginxSe /run/php/php-fpm.sock não existir, use o socket com a versão, por exemplo /run/php/php8.3-fpm.sock.
6. Adicione um certificado HTTPS gratuito
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.comO Certbot instala um timer que renova o certificado automaticamente. Verifique com sudo certbot renew --dry-run.
7. Conclua no navegador e reforce a segurança
Abra https://example.com e finalize o instalador. Depois:
- Mantenha o WordPress, os temas e os plugins atualizados e remova os que você não usa.
- Use senhas de administrador fortes e exclusivas e ative a autenticação em dois fatores no login.
- Faça um snapshot ou backup antes de cada atualização importante.
- Instale um plugin de cache para reduzir a carga em uma VPS pequena.
Perguntas frequentes
Qual versão do PHP devo usar?
Use a versão que vem com a sua release do Ubuntu, desde que o WordPress e os seus plugins a suportem. Confira a página oficial de requisitos.
Posso hospedar vários sites em uma mesma VPS?
Sim. Crie um bloco de servidor no Nginx, um banco de dados e um diretório para cada site, e dê ao servidor RAM suficiente para todos eles.
Por que aparece um erro 502 Bad Gateway?
O Nginx não consegue se comunicar com o PHP-FPM. Verifique se o PHP-FPM está em execução e se o caminho do socket no arquivo do Nginx corresponde a um socket existente.