Installazione software · 4 min read · Jan 27, 2026

Installazione di Lighttpd con PHP5 (PHP-FPM) e supporto MySQL su OpenSUSE 12.2

Installazione di Lighttpd con PHP5 (PHP-FPM) e supporto MySQL su OpenSUSE 12.2

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 puoi installare Lighttpd su un server OpenSUSE 12.2 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 per quelli più trafficati. Utilizzo PHP-FPM in questo tutorial invece di spawn-fcgi di Lighttpd.

Non fornisco alcuna garanzia che questo funzionerà 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 5

Prima installiamo MySQL 5 in questo modo:

zypper install mysql-community-server mysql-community-server-client

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 mysql.service   
systemctl start mysql.service

Per proteggere l’installazione di MySQL, esegui:

mysql_secure_installation

Ora ti verranno poste diverse domande:

server1:~ # mysql_secure_installation

NOTE: ESEGUIRE TUTTE LE PARTI DI QUESTO SCRIPT È RACCOMANDATO PER TUTTI I SERVER MySQL IN USO IN PRODUZIONE! PER FAVORE LEGGI ATTENTAMENTE OGNI PASSO!

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

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

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

Impostare la password di root? [Y/n] <– Y
Nuova password: <– inserisci la tua desiderata password di root MySQL
Reinserisci la nuova password: <– conferma quella password
Password aggiornata con successo!
Ricaricamento delle tabelle dei privilegi..
… Successo!

Per impostazione predefinita, un’installazione di MySQL ha un utente anonimo, che consente a chiunque di accedere a MySQL senza dover avere un account utente creato per loro. Questo è destinato solo per test 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] <– Y
… Successo!

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

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

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

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

  • 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 ora le tabelle dei privilegi? [Y/n] <– Y
… Successo!

Pulizia…

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

Grazie per aver utilizzato MySQL!

server1:~ #

Ora la tua configurazione di MySQL dovrebbe essere sicura.

3 Installazione di Lighttpd

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

zypper 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 start lighttpd.service

Ora indirizza il tuo browser a http://192.168.0.100, e dovresti vedere che Lighttpd fornisce una pagina (beh, è una pagina 404 perché non c’è alcun file index nella radice dei documenti di Lighttpd, ma almeno questo significa che Lighttpd sta funzionando correttamente):

La radice dei documenti predefinita di Lighttpd è /srv/www/htdocs su OpenSUSE, 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:

zypper install php5-fpm

Prima di avviare PHP-FPM, rinomina /etc/php5/fpm/php-fpm.conf.default in /etc/php5/fpm/php-fpm.conf:

mv /etc/php5/fpm/php-fpm.conf.default /etc/php5/fpm/php-fpm.conf

Cambia i permessi della directory delle sessioni di PHP:

chmod 1733 /var/lib/php5

Poi apri /etc/php5/fpm/php-fpm.conf…

vi /etc/php5/fpm/php-fpm.conf

… e cambia error_log in /var/log/php-fpm.log:

| [...] error_log = /var/log/php-fpm.log [...] |

Non c’è alcun file php.ini per PHP-FPM sotto OpenSUSE 12.2, quindi copiamo il php.ini CLI:

cp /etc/php5/cli/php.ini /etc/php5/fpm/

Successivamente apri /etc/php5/fpm/php.ini…

vi /etc/php5/fpm/php.ini

… e imposta cgi.fix_pathinfo su 1:

| [...] ; 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 sia PATH_INFO. Per ulteriori informazioni su PATH_INFO, vedere le specifiche CGI. Impostare questo su 1 farà sì che PHP CGI corregga i suoi percorsi per conformarsi alla specifica. Un'impostazione di zero fa comportare PHP come prima. Il predefinito è 1. Dovresti correggere i tuoi script per utilizzare SCRIPT_FILENAME piuttosto che PATH_TRANSLATED. ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=1 [...] |

Successivamente crea i collegamenti di avvio del sistema per php-fpm e avvialo:

systemctl enable php-fpm.service   
systemctl start php-fpm.service
Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.