Benvenuti alla guida più completa e aggiornata per l’installazione di WordPress su un server dedicato via shell. Questa guida passo-passo vi condurrà attraverso ogni dettaglio del processo, dalla preparazione del server fino alla configurazione finale di WordPress. Che siate sviluppatori esperti o amministratori di sistema alle prime armi, troverete informazioni preziose per ottimizzare la vostra installazione di WordPress.
Indice dei Contenuti
- 1. Preparazione del Server
- 2. Installazione dello Stack LAMP
- 3. Configurazione di MySQL
- 4. Download e Estrazione di WordPress
- 5. Configurazione di WordPress
- 6. Setup del Web Server
- 7. Misure di Sicurezza Essenziali
- 8. Ottimizzazione delle Prestazioni
- 9. Troubleshooting Comune
- 10. Conclusione e Prossimi Passi
1. Preparazione del Server
Prima di iniziare l’installazione di WordPress, è fondamentale preparare adeguatamente il vostro server dedicato. Questo processo include l’aggiornamento del sistema, la configurazione del firewall e l’installazione degli strumenti essenziali.
1.1 Aggiornamento del Sistema
Iniziamo con l’aggiornamento del sistema operativo. Assumiamo che stiate utilizzando una distribuzione Linux basata su Debian (come Ubuntu). Aprite il terminale e eseguite i seguenti comandi:
sudo apt update
sudo apt upgrade -y
Questi comandi aggiornano la lista dei pacchetti disponibili e installano gli aggiornamenti più recenti per tutti i pacchetti installati sul vostro sistema.
1.2 Configurazione del Firewall
La sicurezza è cruciale. Configuriamo UFW (Uncomplicated Firewall) per proteggere il server:
sudo apt install ufw
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable
Questi comandi installano UFW, aprono le porte necessarie (SSH, HTTP, HTTPS) e attivano il firewall.
1.3 Installazione degli Strumenti Essenziali
Installiamo alcuni strumenti essenziali che ci saranno utili durante il processo:
sudo apt install wget curl zip unzip -y
2. Installazione dello Stack LAMP
WordPress richiede lo stack LAMP (Linux, Apache, MySQL, PHP). Procediamo con l’installazione di questi componenti.
2.1 Installazione di Apache
sudo apt install apache2 -y
sudo systemctl start apache2
sudo systemctl enable apache2
Questi comandi installano Apache, lo avviano e lo configurano per l’avvio automatico al boot del sistema.
2.2 Installazione di MySQL
sudo apt install mysql-server -y
sudo mysql_secure_installation
Seguite le istruzioni a schermo per configurare MySQL in modo sicuro.
2.3 Installazione di PHP
sudo apt install php libapache2-mod-php php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip -y
Questo comando installa PHP e le estensioni necessarie per WordPress.
3. Configurazione di MySQL
Ora configureremo MySQL per WordPress.
3.1 Creazione del Database
sudo mysql -u root -p
Una volta all’interno della shell MySQL, eseguite:
CREATE DATABASE wordpress;
CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'password_sicura';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpressuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Assicuratevi di sostituire ‘password_sicura’ con una password robusta.
4. Download e Estrazione di WordPress
Scarichiamo e estraiamo l’ultima versione di WordPress.
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
sudo mv wordpress /var/www/html/
5. Configurazione di WordPress
Configuriamo WordPress per l’utilizzo con il nostro database.
5.1 Creazione del File di Configurazione
cd /var/www/html/wordpress
cp wp-config-sample.php wp-config.php
5.2 Modifica del File di Configurazione
sudo nano wp-config.php
Modificate le seguenti linee con le informazioni del vostro database:
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpressuser');
define('DB_PASSWORD', 'password_sicura');
define('DB_HOST', 'localhost');
5.3 Generazione delle Chiavi di Sicurezza
Visitate https://api.wordpress.org/secret-key/1.1/salt/ e copiate le chiavi generate nel vostro wp-config.php.
6. Setup del Web Server
Configuriamo Apache per servire WordPress.
6.1 Creazione del Virtual Host
sudo nano /etc/apache2/sites-available/wordpress.conf
Inserite il seguente contenuto:
<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /var/www/html/wordpress
<Directory /var/www/html/wordpress>
AllowOverride All
</Directory>
</VirtualHost>
6.2 Attivazione del Virtual Host
sudo a2ensite wordpress.conf
sudo a2enmod rewrite
sudo systemctl restart apache2
7. Misure di Sicurezza Essenziali
La sicurezza è fondamentale per qualsiasi installazione WordPress.
7.1 Impostazione dei Permessi Corretti
sudo chown -R www-data:www-data /var/www/html/wordpress
sudo find /var/www/html/wordpress/ -type d -exec chmod 750 {} \;
sudo find /var/www/html/wordpress/ -type f -exec chmod 640 {} \;
7.2 Configurazione di SSL/TLS
Per abilitare HTTPS, utilizzate Let’s Encrypt:
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d yourdomain.com
8. Ottimizzazione delle Prestazioni
Ottimizziamo le prestazioni del nostro server WordPress.
8.1 Abilitazione della Cache di PHP
sudo apt install php-opcache -y
sudo nano /etc/php/7.4/apache2/php.ini
Trovate e modificate le seguenti linee:
opcache.enable=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
8.2 Configurazione della Cache del Browser
Aggiungete le seguenti linee al vostro file .htaccess in /var/www/html/wordpress/:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresDefault "access plus 2 days"
</IfModule>
9. Troubleshooting Comune
Ecco alcuni problemi comuni e le loro soluzioni:
9.1 Errore di Connessione al Database
Se ricevete un errore di connessione al database, verificate:
- Le credenziali nel file wp-config.php
- Che il servizio MySQL sia in esecuzione:
sudo systemctl status mysql
- Che l’utente del database abbia i permessi corretti
9.2 Problemi di Permessi
Se WordPress non riesce a scrivere file o cartelle, eseguite:
sudo chown -R www-data:www-data /var/www/html/wordpress
sudo find /var/www/html/wordpress/ -type d -exec chmod 755 {} \;
sudo find /var/www/html/wordpress/ -type f -exec chmod 644 {} \;
9.3 Errori 500 Internal Server
Controllate i log di Apache per dettagli:
sudo tail -f /var/log/apache2/error.log
10. Conclusione e Prossimi Passi
Congratulazioni! Avete completato con successo l’installazione di WordPress su un server dedicato utilizzando la shell. Questo processo vi ha fornito un controllo completo sull’ambiente del vostro sito WordPress.
Ecco alcuni prossimi passi consigliati:
- Installate un plugin di sicurezza come Wordfence o Sucuri
- Configurate un sistema di backup automatico
- Implementate un CDN per migliorare ulteriormente le prestazioni
- Mantenete regolarmente aggiornati WordPress, i temi e i plugin
Ricordate che la sicurezza e l’ottimizzazione sono processi continui. Continuate a monitorare e migliorare il vostro sito per garantire le migliori prestazioni e la massima sicurezza.
Risorse Utili
- WordPress Codex – La documentazione ufficiale di WordPress
- DigitalOcean Tutorials – Guide approfondite su vari aspetti della gestione dei server
- Servers for Hackers – Risorse avanzate per la gestione dei server
Questa guida dettagliata vi ha fornito una solida base per gestire la vostra installazione di WordPress su un server dedicato. Continuate a esplorare e imparare per sfruttare al massimo il vostro ambiente WordPress personalizzato.