PHP-CGI o PHP-FPM?
La differenza che fa rallentare (o volare) il tuo sito — e come cambiarla in autonomia dal pannello
Quando un cliente apre un ticket per un sito WordPress lento, o per errori 502 sotto carico, la prima cosa che controlliamo è sempre la stessa: come sta girando PHP sul suo VPS.
Nella maggior parte dei casi, la risposta è semplice: sta usando la modalità sbagliata per le sue esigenze. E la cosa interessante è che sistemarlo non richiede di aprire una console, toccare un file di configurazione o contattare il supporto. Su tutti i VPS Denali PRO con ISPConfig, il cambio si fa in autonomia dal pannello, sito per sito, in trenta secondi.
Ma prima di spiegare come, vale la pena capire cosa cambia davvero tra PHP-CGI e PHP-FPM, perché la differenza non è solo tecnica: impatta direttamente sulle prestazioni, sulla stabilità e sull’uso delle risorse del tuo server.
Cos’è PHP-CGI — e perché è il metodo “storico”
CGI sta per Common Gateway Interface: un protocollo standard che definisce come un web server (Apache, Nginx) può comunicare con un programma esterno per generare contenuto dinamico.
Nel caso di PHP-CGI, il funzionamento è questo: arriva una richiesta HTTP → il web server avvia un nuovo processo PHP → PHP elabora la richiesta → il processo si chiude.
Ogni richiesta, un processo. Ogni processo, un avvio da zero.
Il problema principale è che, a ogni richiesta, devono essere caricati e analizzati i moduli PHP, il file php.ini e tutta la configurazione. Nessuna cache, nessuna ottimizzazione tra una richiesta e l’altra.
Il lato positivo esiste ed è reale: PHP-CGI rilegge la sua configurazione a ogni caricamento di pagina, il che lo rende preferibile quando si sta testando molte impostazioni nuove e si vuole vedere la risposta immediata senza dover riavviare il web server.
Inoltre, PHP-CGI offre una maggiore sicurezza rispetto a PHP-FPM, perché l’esecuzione del codice PHP è isolata dal web server.
Ma per un sito con traffico normale o in crescita? PHP-CGI è il metodo legacy: prestazioni molto scarse per siti con traffico elevato. Sotto carico, i processi si moltiplicano senza controllo e il server può arrivare in stallo.
Cos’è PHP-FPM — e perché è lo standard moderno
PHP-FPM sta per FastCGI Process Manager. L’architettura è radicalmente diversa.
Invece di avviare un processo PHP per ogni richiesta, PHP-FPM mantiene dei pool di worker — processi già avviati e pronti a rispondere alle richieste PHP. Quando arriva una richiesta, viene assegnata a un worker già in esecuzione. Nessun avvio da zero, nessuno spreco.
Il risultato pratico:
PHP-FPM è più veloce dei metodi tradizionali basati su CGI negli ambienti PHP multi-utente, e non sovraccarica la memoria del sistema con processi PHP avviati da Apache.
Prestazioni robuste per siti con traffico elevato, minor consumo di risorse, footprint di memoria ridotto e reload graceful senza interrompere le query in corso.
Gestisce bene i picchi di traffico e offre buon isolamento tra siti diversi sullo stesso server.
Lo svantaggio principale è che richiede più configurazione rispetto a PHP-CGI, e non supporta le direttive PHP via .htaccess — la configurazione avviene tramite php.ini o l’interfaccia delle impostazioni PHP nel pannello.
Confronto diretto
PHP-CGI PHP-FPM Architettura Un processo per richiesta Pool di worker persistenti Performance sotto carico Scarsa Ottima Consumo memoria Alto (cresce con le richieste) Controllato e prevedibile Reload configurazione Ad ogni richiesta (utile in sviluppo) Richiede reload del pool Isolamento tra siti Buono Buono (pool separati) Supporto .htaccess per PHP Sì No Caso d’uso ideale Test/sviluppo, siti con pochissimo traffico Produzione, WordPress, qualsiasi sito con traffico reale
La sintesi è questa: PHP-FPM è lo standard moderno e dovrebbe essere la scelta predefinita per l’hosting PHP. CGI dovrebbe essere usato solo in rari casi limite, per siti estremamente semplici e con pochissimo traffico.
Come funziona il cambio su ISPConfig
Su un server gestito da noi con ISPConfig, ogni sito web ha le proprie impostazioni PHP indipendenti dagli altri siti sullo stesso VPS. Non esiste un’impostazione globale che si applica a tutti: la versione PHP e la modalità di esecuzione possono essere selezionate per ogni sito individualmente nelle impostazioni del sito web in ISPConfig.
Il cambio da PHP-CGI a PHP-FPM (o viceversa) si esegue così:
Accedi al pannello ISPConfig del tuo VPS Denali PRO
Vai su Sites → Websites e apri il sito che vuoi modificare
Nella scheda Domain (o Options, a seconda della versione), trovi il menu a tendina PHP
Seleziona la modalità desiderata:
PHP-FPMoppureFast-CGI(che corrisponde a PHP-CGI)Salva — ISPConfig applica la modifica in autonomia, riconfigurando il virtual host del sito
Nessun accesso SSH necessario. Nessun ticket di supporto. Nessun downtime degli altri siti sul server.
Nella scheda Options puoi anche gestire le impostazioni PHP-FPM specifiche per quel sito e i parametri custom di php.ini, tutto direttamente dall’interfaccia ISPConfig, senza accesso a livello di server.
Questo è uno dei vantaggi concreti del modello “server as a profile” di Denali PRO: l’infrastruttura è configurata in modo da darti il controllo operativo diretto, senza dover passare ogni volta da noi per modifiche che dovresti poter fare tu.
Quando ha senso cambiare modalità — casi pratici
Passa a PHP-FPM se:
Hai un sito WordPress o basato su CMS con traffico reale
Stai notando lentezze o errori 502/504 sotto carico
Il sito è in produzione e la stabilità conta
Vuoi ottimizzare l’uso delle risorse del tuo VPS
Tieni PHP-CGI (o torna a PHP-CGI) se:
Stai sviluppando in locale o su un ambiente di staging
Vuoi vedere immediatamente l’effetto di modifiche a
php.ini (tramite le options di ispconfig)senza reloadIl sito ha traffico bassissimo e hai esigenze di isolamento specifiche
Quindi?
PHP-CGI e PHP-FPM non sono intercambiabili senza considerazioni: rispondono a esigenze diverse, e scegliere quello sbagliato ha conseguenze concrete sulle prestazioni del tuo sito.
PHP-FPM è la scelta corretta per la stragrande maggioranza degli scenari di produzione. PHP-CGI ha ancora senso in contesti di sviluppo o test, dove la flessibilità di configurazione immediata vale di più della velocità.
Su un VPS Denali PRO con ISPConfig, non devi scegliere una volta per tutte: puoi adattare la modalità PHP a ogni singolo sito, in ogni momento, dal pannello. Senza aprire un terminale.
Hai un VPS con Denali PRO e vuoi ottimizzare la configurazione PHP dei tuoi siti? Scrivici a support@denali.pro oppure apri un ticket dal pannello — valutiamo insieme la configurazione attuale e ti diciamo se c’è margine di miglioramento.
Per scoprire i nostri piani VPS: denali.pro


