A hospedagem gerenciada de WordPress cobra por site e esconde as configurações. No seu próprio VPS você tem o servidor inteiro, quantos sites ele aguentar e controle total sobre o PHP e o cache. A stack clássica (Nginx, PHP-FPM, MariaDB) se instala em uns quinze minutos no Ubuntu 24.04.
Antes de começar: você precisa de um plano com IP dedicado (os visitantes se conectam às portas 80/443; planos NAT não aceitam tráfego web de entrada) e de um domínio com o registro A apontando para o servidor. O Micro-IP a $10 por mês é uma casa confortável para um site comum.
1. Instale a stack
apt update
apt install -y nginx mariadb-server php8.3-fpm php8.3-mysql php8.3-curl \
php8.3-gd php8.3-intl php8.3-mbstring php8.3-xml php8.3-zip
2. Crie o banco de dados
No Ubuntu, o MariaDB deixa o root entrar pelo socket local, sem senha:
mariadb <<'SQL'
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4;
CREATE USER 'wp'@'localhost' IDENTIFIED BY 'use-a-long-random-password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp'@'localhost';
FLUSH PRIVILEGES;
SQL
3. Baixe o WordPress
cd /tmp && curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz
mv wordpress /var/www/example.com
chown -R www-data:www-data /var/www/example.com
4. Configure o Nginx
cat > /etc/nginx/sites-available/example.com <<'EOF'
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.php;
client_max_body_size 64M;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ /\.(?!well-known) { deny all; }
}
EOF
ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default
nginx -t && systemctl reload nginx
A linha try_files é o que faz os links permanentes amigáveis funcionarem: o equivalente no Nginx às regras .htaccess do WordPress.
Aumente o limite de upload do PHP para bater com o client_max_body_size:
sed -i 's/^upload_max_filesize.*/upload_max_filesize = 64M/; s/^post_max_size.*/post_max_size = 64M/' /etc/php/8.3/fpm/php.ini
systemctl restart php8.3-fpm
5. HTTPS gratuito
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com
O certbot edita a configuração do Nginx para HTTPS e configura a renovação automática.
6. Termine no navegador
Abra https://example.com, informe o nome do banco (wordpress), o usuário (wp) e a senha do passo 2, e crie a sua conta de administrador. Escolha um nome de administrador diferente de «admin».
Rápido e seguro
- Firewall:
ufw allow 22/tcp && ufw allow 'Nginx Full' && ufw enable. - Atualizações: ative no painel as atualizações automáticas do núcleo do WordPress e, para o servidor, as atualizações de segurança automáticas.
- Cache: numa máquina pequena, um plugin de cache de páginas faz mais diferença do que qualquer ajuste no servidor.
- Backups: os Managed Backups guardam pontos de restauração diários do servidor inteiro ($2/mês, grátis nos planos anuais). Para uma cópia portátil, adicione
mysqldump wordpress > wp.sqle a pastawp-content. - Memória: em servidores de 1 GB, adicione um arquivo de swap de 2 GB.
Relacionados
- VPS para um site
- Proxy reverso Nginx com HTTPS
- VPS para Plausible Analytics: estatísticas sem cookies para o seu site
Comentários
Nenhum comentário ainda. Seja o primeiro.