L'hosting WordPress gestito si fa pagare per ogni sito e nasconde le impostazioni. Sul tuo VPS hai l'intero server, quanti siti riesce a reggere e il pieno controllo su PHP e cache. Lo stack classico (Nginx, PHP-FPM, MariaDB) si installa in circa quindici minuti su Ubuntu 24.04.
Prima di iniziare: ti serve un piano con IP dedicato (i visitatori si collegano alle porte 80/443; i piani NAT non accettano traffico web in entrata) e un dominio con il record A che punta al server. Micro-IP a $10 al mese è una casa comoda per un sito normale.
1. Installa lo 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. Crea il database
Su Ubuntu, MariaDB fa entrare root tramite il socket locale, senza password:
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. Scarica 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. Configura 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
La riga try_files è quella che fa funzionare i permalink leggibili: l'equivalente Nginx delle regole .htaccess di WordPress.
Alza il limite di upload di PHP per farlo coincidere con 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
Certbot modifica la configurazione di Nginx per l'HTTPS e imposta il rinnovo automatico.
6. Completa nel browser
Apri https://example.com, inserisci il nome del database (wordpress), l'utente (wp) e la password del passaggio 2, e crea il tuo account amministratore. Scegli un nome amministratore diverso da «admin».
Veloce e sicuro
- Firewall:
ufw allow 22/tcp && ufw allow 'Nginx Full' && ufw enable. - Aggiornamenti: attiva nella bacheca gli aggiornamenti automatici del core di WordPress e, per il server, gli aggiornamenti di sicurezza automatici.
- Cache: su una macchina piccola, un plugin di cache delle pagine fa più differenza di qualsiasi regolazione del server.
- Backup: i Managed Backups conservano punti di ripristino giornalieri dell'intero server ($2/mese, gratis nei piani annuali). Per una copia portatile, aggiungi
mysqldump wordpress > wp.sqle la cartellawp-content. - Memoria: sui server da 1 GB, aggiungi un file di swap da 2 GB.
Correlati
- VPS per un sito web
- Reverse proxy Nginx con HTTPS
- VPS per Plausible Analytics: statistiche senza cookie per il tuo sito
Commenti
Ancora nessun commento. Sii il primo.