Installazione Server · 5 min read · Jan 27, 2026

Installazione di Lighttpd con supporto PHP5 (PHP-FPM) e MySQL su Fedora 19

Installazione di Lighttpd con supporto PHP5 (PHP-FPM) e MySQL su Fedora 19

Versione 1.0
Autore: Falko Timme
Seguimi su Twitter

Lighttpd è un server web sicuro, veloce e conforme agli standard, progettato per ambienti critici per la velocità. Questo tutorial mostra come installare Lighttpd su un server Fedora 19 con supporto PHP5 (tramite PHP-FPM) e supporto MySQL. PHP-FPM (FastCGI Process Manager) è un’implementazione alternativa di PHP FastCGI con alcune funzionalità aggiuntive utili per siti di qualsiasi dimensione, specialmente quelli più trafficati. Utilizzo PHP-FPM in questo tutorial invece di spawn-fcgi di Lighttpd.

Non fornisco alcuna garanzia che questo funzioni per te!

1 Nota Preliminare

In questo tutorial utilizzo il nome host server1.example.com con l’indirizzo IP 192.168.0.100. Queste impostazioni potrebbero differire per te, quindi devi sostituirle dove appropriato.

2 Installazione di MySQL/MariaDB 5

Per prima cosa installiamo MySQL 5 in questo modo:

yum install mysql mysql-server

Poi creiamo i collegamenti di avvio del sistema per MySQL (in modo che MySQL si avvii automaticamente ogni volta che il sistema si avvia) e avviamo il server MySQL:

systemctl enable mysqld.service  
systemctl start mysqld.service

Crea una password per l’utente MySQL root (sostituisci yourrootsqlpassword con la password che desideri utilizzare):

mysql_secure_installation

[root@server1 ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found

NOTA: E’ RACCOMANDATO ESEGUIRE TUTTE LE PARTI DI QUESTO SCRIPT PER TUTTI I SERVER MariaDB IN USO IN PRODUZIONE! PER FAVORE LEGGI ATTENTAMENTE OGNI PASSO!

Per accedere a MariaDB per garantirne la sicurezza, avremo bisogno della password attuale per l’utente root. Se hai appena installato MariaDB e non hai ancora impostato la password root, la password sarà vuota, quindi dovresti semplicemente premere invio qui.

Inserisci la password attuale per root (premi invio per nessuna): <– ENTER
OK, password utilizzata con successo, procedendo…

Impostare la password root garantisce che nessuno possa accedere all’utente root di MariaDB senza la corretta autorizzazione.

Impostare la password root? [Y/n] <– ENTER
Nuova password: <– yourrootsqlpassword
Reinserisci la nuova password: <– yourrootsqlpassword
Password aggiornata con successo!
Ricaricamento delle tabelle dei privilegi..
… Successo!

Per impostazione predefinita, un’installazione di MariaDB ha un utente anonimo, che consente a chiunque di accedere a MariaDB senza dover avere un’account utente creato per loro. Questo è inteso solo per testare e per rendere l’installazione un po’ più fluida. Dovresti rimuoverli prima di passare a un ambiente di produzione.

Rimuovere gli utenti anonimi? [Y/n] <– ENTER
… Successo!

Normalmente, root dovrebbe essere autorizzato a connettersi solo da ‘localhost’. Questo garantisce che qualcuno non possa indovinare la password root dalla rete.

Negare l’accesso remoto a root? [Y/n] <– ENTER
… Successo!

Per impostazione predefinita, MariaDB viene fornito con un database chiamato ‘test’ a cui chiunque può accedere. Questo è anche inteso solo per testare e dovrebbe essere rimosso prima di passare a un ambiente di produzione.

Rimuovere il database di test e l’accesso ad esso? [Y/n] <– ENTER

  • Rimozione del database di test…
    … Successo!
  • Rimozione dei privilegi sul database di test…
    … Successo!

Ricaricare le tabelle dei privilegi garantirà che tutte le modifiche apportate finora abbiano effetto immediato.

Ricaricare le tabelle dei privilegi ora? [Y/n] <– ENTER
… Successo!

Pulizia…

Tutto fatto! Se hai completato tutti i passaggi sopra, la tua installazione di MariaDB dovrebbe ora essere sicura.

Grazie per aver utilizzato MariaDB!
[root@server1 ~]#

3 Installazione di Lighttpd

Lighttpd è disponibile come pacchetto Fedora, quindi possiamo installarlo in questo modo:

yum install lighttpd

Poi creiamo i collegamenti di avvio del sistema per Lighttpd (in modo che Lighttpd si avvii automaticamente ogni volta che il sistema si avvia) e lo avviamo:

systemctl enable lighttpd.service  
systemctl restart lighttpd.service

Ora indirizza il tuo browser a http://192.168.0.100, e dovresti vedere la pagina segnaposto di Lighttpd:

La directory predefinita dei documenti di Lighttpd è /var/www/lighttpd su Fedora, e il file di configurazione è /etc/lighttpd/lighttpd.conf.

4 Installazione di PHP5

Possiamo far funzionare PHP5 in Lighttpd tramite PHP-FPM che installiamo in questo modo:

yum install php-fpm lighttpd-fastcgi

PHP-FPM è un processo daemon che esegue un server FastCGI sulla porta 9000.

Crea i collegamenti di avvio del sistema per PHP-FPM e avvialo:

systemctl enable php-fpm.service  
systemctl start php-fpm.service

5 Configurazione di Lighttpd e PHP5

Per abilitare PHP5 in Lighttpd, dobbiamo modificare due file, /etc/php.ini e /etc/lighttpd/lighttpd.conf. Prima apriamo /etc/php.ini e decommentiamo la riga cgi.fix_pathinfo=1:

vi /etc/php.ini

| [...] ; cgi.fix_pathinfo fornisce supporto *reale* per PATH_INFO/PATH_TRANSLATED per CGI. Il comportamento precedente di PHP era impostare PATH_TRANSLATED su SCRIPT_FILENAME e non comprendere cosa fosse PATH_INFO. Per ulteriori informazioni su PATH_INFO, vedere le specifiche cgi. Impostare questo a 1 farà sì che PHP CGI corregga i suoi percorsi per conformarsi alla specifica. Un'impostazione di zero fa comportare PHP come prima. Il valore predefinito è 1. Dovresti correggere i tuoi script per utilizzare SCRIPT_FILENAME piuttosto che PATH_TRANSLATED. ; http://www.php.net/manual/en/ini.core.php#ini.cgi.fix-pathinfo cgi.fix_pathinfo=1 [...] |

Poi apriamo /etc/lighttpd/conf.d/fastcgi.conf e assicuriamoci che “mod_fastcgi” sia abilitato:

vi /etc/lighttpd/conf.d/fastcgi.conf

| [...] server.modules += ( "mod_fastcgi" ) [...] |

Poi, più in basso nel file, c’è una strofetta fastcgi.server - lasciala commentata e aggiungi la tua strofetta fastcgi.server come segue:

| [...] ## ## Esempio PHP ## Per PHP non dimenticare di impostare cgi.fix_pathinfo = 1 nel php.ini. ## ## Il numero di processi php che otterrai può essere facilmente calcolato: ## ## num-procs = max-procs * ( 1 + PHP_FCGI_CHILDREN ) ## ## per l'esempio php-num-procs significa che otterrai 17*5 = 85 processi php. ## dovresti sempre avere questo alto numero per i tuoi siti molto ## trafficati. E se hai molta RAM. :) ## fastcgi.server += ( ".php" => (( "host" => "127.0.0.1", "port" => "9000", "broken-scriptfilename" => "enable" )) ) #fastcgi.server = ( ".php" => # ( "php-local" => # ( # "socket" => socket_dir + "/php-fastcgi-1.socket", # "bin-path" => server_root + "/cgi-bin/php5", # "max-procs" => 1, # "broken-scriptfilename" => "enable", # ) # ), # ( "php-tcp" => # ( # "host" => "127.0.0.1", # "port" => 9999, # "check-local" => "disable", # "broken-scriptfilename" => "enable", # ) # ), # # ( "php-num-procs" => # ( # "socket" => socket_dir + "/php-fastcgi-2.socket", # "bin-path" => server_root + "/cgi-bin/php5", # "bin-environment" => ( # "PHP_FCGI_CHILDREN" => "16", # "PHP_FCGI_MAX_REQUESTS" => "10000", # ), # "max-procs" => 5, # "broken-scriptfilename" => "enable", # ) # ), # ) ), [...] |

Apri /etc/lighttpd/modules.conf…

vi /etc/lighttpd/modules.conf

… e attiva il file /etc/lighttpd/conf.d/fastcgi.conf:

| [...] ## ## FastCGI (mod_fastcgi) ## include "conf.d/fastcgi.conf" [...] |

Poi riavviamo Lighttpd:

systemctl restart lighttpd.service
Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.