Guida Completa: Come Installare LAMP su Ubuntu 26.04
Cos'è uno Stack LAMP e a Cosa Serve? Nel mondo dello sviluppo di applicazioni web, partire con il piede giusto è fondamentale. Uno degli ambienti di sviluppo più solidi e diffusi è lo stack LAMP, un acronimo che rappresenta un gruppo di componenti software open source, orchestrati per far funzionare siti web e servizi online. Questa guida ti mostrerà passo dopo passo come installare e configurare un server LAMP su Ubuntu 26.04 "Resolute Raccoon".
Cosa significa LAMP? Analizziamo ogni lettera:
- L per Linux: In questo caso, Ubuntu 26.04. Linux è un sistema operativo robusto e flessibile, la base su cui costruiremo tutto il resto.
- A per Apache: È il server web, il software che riceve le richieste dai browser degli utenti e serve loro i contenuti, che siano semplici web statici o complesse pagine web dinamiche.
- M per MySQL (o MariaDB): È il database, uno dei più popolari sistemi di gestione di dati relazionali, indispensabile per memorizzare informazioni in modo strutturato.
- P per PHP: È il linguaggio di programmazione lato server che si interfaccia con il database e il server web per generare contenuti dinamici e costruire la logica delle tue applicazioni web.
Insieme, lo stack L.A.M.P. (Linux, Apache, MySQL, PHP), costituisce una piattaforma potente e affidabile, scelta da milioni di sviluppatori per la sua stabilità e il vasto supporto della comunità open source.
1. Installare e Ottimizzare il Server Web Apache
Il primo passo è installare Apache2, il componente che gestirà le richieste HTTP. Invece di usare la configurazione di default, la ottimizzeremo subito per le massime performance utilizzando mpm_event e il protocollo HTTP/2.
Installiamo il pacchetto di Apache.
sudo apt update && sudo apt install apache2Disabilitiamo il modulo
mpm_prefork, meno performante, e abilitiamompm_event, ideale per gestire un alto numero di connessioni simultanee, insieme ahttp2per una comunicazione più veloce.sudo a2dismod mpm_prefork sudo a2enmod mpm_event http2Applichiamo le modifiche riavviando il servizio di Apache.
sudo service apache2 restart
2. Installare e Configurare PHP-FPM
Per eseguire il codice del nostro linguaggio di programmazione, PHP, utilizzeremo PHP-FPM (FastCGI Process Manager). È un'implementazione ad alte prestazioni che gestisce le richieste PHP in modo molto più efficiente rispetto al tradizionale mod_php, rendendola la scelta ideale per le moderne applicazioni web.
Installiamo PHP-FPM e i moduli necessari ad Apache per comunicare con esso.
sudo apt install php-fpmsudo a2enmod actions proxy_fcgi alias headersPer collegare Apache a PHP-FPM, modifica i tuoi file Virtual Host (che vedremo tra poco) aggiungendo questo blocco di codice. Indirizzerà tutte le richieste di file
.phpal servizio FPM.<FilesMatch ".+\.php$"> SetHandler "proxy:unix:/run/php/php8.5-fpm.sock" </FilesMatch>Installa i moduli PHP più comuni, necessari alla maggior parte dei sistemi di gestione di contenuti (CMS) e framework per lo sviluppo di applicazioni.
sudo apt install php-mysql php-curl php-gd php-intl php-mbstring php-xml php-zipRiavviamo sia PHP-FPM che Apache per rendere effettive tutte le modifiche.
sudo service php8.5-fpm restart sudo service apache2 restart
3. Mettere in Sicurezza il Sito con HTTPS (Let's Encrypt)
Nessun sito moderno può fare a meno del protocollo HTTPS. Utilizzeremo Let's Encrypt e lo strumento certbot per ottenere e rinnovare automaticamente certificati SSL gratuiti e riconosciuti da tutti i browser.
Installa Certbot e il suo plugin per Apache.
sudo apt install certbot python3-certbot-apacheLancia lo strumento di configurazione guidata. Certbot rileverà i domini configurati nei tuoi Virtual Host e ti guiderà nella generazione del certificato e nella configurazione automatica di Apache per l'HTTPS.
sudo certbot --apacheVerifica che il rinnovo automatico funzioni correttamente con una simulazione.
sudo certbot renew --dry-run
Se tutto è andato a buon fine, il tuo sito sarà ora accessibile tramite https:// con un certificato valido.
4. Installare il Database: MySQL o MariaDB
L'ultimo dei componenti software del nostro stack LAMP è il database. MariaDB è un "fork" open source di MySQL, completamente compatibile e spesso preferito per le sue performance. La scelta dipende dalle tue esigenze.
Per installare MariaDB Server (scelta consigliata):
sudo apt install mariadb-serverIn alternativa, per installare MySQL Server:
sudo apt install mysql-server
Dopo l'installazione, è fondamentale mettere in sicurezza il database eseguendo lo script interattivo incluso.
sudo mysql_secure_installationQuesto script ti guiderà nella configurazione della password di root, nella rimozione degli utenti anonimi e del database di test, garantendo un livello di sicurezza base per il tuo ambiente di produzione.
Installare uno stack LAMP è solo l'inizio. Mantenerlo sicuro, ottimizzato e performante richiede tempo e competenze specifiche. Affidati a un nostro Consulente Linux esperto. Oggi 30 minuti di analisi gratuita del tuo sistema.
Domande Frequenti (FAQ)
Qual è la differenza tra LAMP e LEMP?
La differenza principale sta nel server web. LAMP usa Apache, mentre LEMP usa Nginx (la "E" sta per "Engine-X"). Nginx è noto per essere estremamente efficiente nel servire contenuti statici e nel gestire un altissimo numero di connessioni, mentre Apache è apprezzato per la sua flessibilità e i suoi potenti moduli come
.htaccess.Perché usare PHP-FPM invece del vecchio
mod_php?PHP-FPM esegue PHP come un servizio separato, permettendo una gestione delle risorse molto più granulare e performante. Questo approccio evita che il server web si blocchi sotto carico e migliora notevolmente la velocità di risposta delle applicazioni web, specialmente in combinazione con il modulo
mpm_eventdi Apache.Posso usare altri sistemi operativi al posto di Ubuntu?
Assolutamente sì. Sebbene questa guida sia specifica per Ubuntu, lo stack LAMP può essere installato su quasi tutti i sistemi operativi basati su Linux, come Debian, CentOS o Fedora. I comandi per la gestione dei pacchetti potrebbero variare (es.
yumodnfinvece diapt), ma i principi di configurazione rimangono gli stessi.
Correzione Handler PHP
Grazie Ton per il suggerimento, ho corretto la guida per utilizzare il socket di default di PHP 8.5
Configurazione PHP non valida
La configurazione PHP descritta qui non funziona così com'è. Questo perché php8.5-fpm (attualmente incluso nella versione 26.04) è configurato per ascoltare su un socket Unix e non su 127.0.0.1:9000