Lighttpd è un server Web open source incentrato sulla semplicità e sulle prestazioni elevate. è un server Web leggero con un consumo di memoria ridotto e ridotto, ma rimane comunque conforme agli standard, sicuro e flessibile. Il web sevrer Lighttpd fa parte di LLMP Stack, che sta per Linux, Lighttpd, MySQL/MariaDB e PHP/PHP-FPM.
In questo tutorial, ti mostreremo come installare e configurare lo stack LLMP sul server CentOS 8. Installeremo il server Web Lighttpd con il server di database MariaDB e PHP-FPM sull'ultima versione del server CentOS 8.
Prerequisiti
- Server CentOS 8
- Privilegi di root
- Comprensione del server CentOS di base
Cosa faremo?
- Installa il server Web Lighttpd
- Installa il server di database MariaDB
- Installa PHP-FPM
- Imposta Lighttpd e PHP-FPM
- Test
Passaggio 1:installazione del server Web Lighttpd
Innanzitutto, aggiungeremo il repository EPEL e installeremo il server Web Lighttpd sul nostro sistema CentOS 8. Per impostazione predefinita, Lighttpd è disponibile nel repository EPEL (Extract Packages for Enterprise Linux).
Aggiungi il repository EPEL al sistema CentOS 8 utilizzando il comando DNF di seguito.
sudo dnf install epel-release
Successivamente, controlla tutti i repository disponibili utilizzando il seguente comando.
dnf repolist
Ora assicurati di ottenere il repository EPEL sul risultato.
Quindi, installa i pacchetti Lighttpd usando il comando seguente.
sudo dnf install lighttpd -y
Una volta completata l'installazione, avvia il servizio Lighttpd e aggiungilo all'avvio del sistema.
systemctl start lighttpd
systemctl enable lighttpd
Ora controlla lo stato del servizio Lighttpd usando il seguente comando.
systemctl status lighttpd
Di seguito è riportato il risultato che otterrai.
Di conseguenza, il servizio Lighttpd è attivo e funzionante sul sistema CentOS 8.
Successivamente, aggiungi il servizio HTTP all'elenco delle regole firewalld utilizzando il comando 'firewall-cmd' di seguito.
firewall-cmd --add-service=http --permanent
firewall-cmd --reload
Ora apri il tuo browser web e digita l'indirizzo IP del server sulla barra degli indirizzi.
http://192.168.1.50/
Di conseguenza, otterrai il valore predefinito 'index.html' del server Web Lighttpd.
Passaggio 2:installazione del server di database MariaDB
In questo passaggio, installeremo il server del database MariaDB e imposteremo la password di root predefinita per il server MariaDB.
Per installare il server del database MariaDB, eseguire il comando dnf di seguito.
sudo dnf install mariadb-server -y
Al termine dell'installazione, avvia il servizio MariaDB e aggiungilo all'avvio del sistema.
systemctl start mariadb
systemctl enable mariadb
Ora controlla il servizio MariaDB usando il comando seguente.
systemctl status mariadb
Di seguito è riportato il risultato che otterrai.
Di conseguenza, il servizio MariaDB è attivo e funzionante sul sistema CentOS 8.
Quindi, esegui il comando 'mysql_secure_installation' di seguito per impostare la password di root predefinita.
mysql_secure_installation
Ora digita la nuova password per il tuo server MariaDB e digita "Y" per tutte le configurazioni.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Set a root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
E la password di root di MariaDB è stata configurata.
Quindi, accedi alla shell MySQL utilizzando l'utente root predefinito e la tua password.
mysql -u root -p
Dopo aver effettuato l'accesso, controlla tutti gli utenti disponibili sul server MariaDB utilizzando le seguenti query.
select User,Host from mysql.user;
E otterrai tutti gli utenti predefiniti per il server MySQL. Ora digita 'exit' per uscire dalla shell MySQL.
Di conseguenza, l'installazione e la configurazione del server del database MariaDB sul sistema CentOS 8 sono state completate.
Fase 3 - Installa e configura PHP-FPM
Per questo passaggio, installeremo e configureremo il server Web PHP-FPM per Lighttpd.
Installa i pacchetti PHP e PHP-FPM usando il comando dnf qui sotto.
sudo dnf install php php-fpm lighttpd-fastcgi php-mysqlnd php-pdo php-gd php-mbstring
Una volta completata l'installazione, modifica la configurazione '/etc/php-fpm.d/www.conf' usando vim editor.
vim /etc/php-fpm.d/www.conf
Modifica "utente" e "gruppo" predefiniti in Lighttpd come di seguito.
user = lighttpd
group = lighttpd
Modifica l'ascolto PHP-FPM predefinito utilizzando l'indirizzo IP locale con la porta '9000'.
listen = 127.0.0.1:9000
Salva e chiudi.
Quindi, modifica la configurazione PHP '/etc/php.ini' usando l'editor vim.
vim /etc/php.ini
Decommentare la riga seguente per ottenere supporto con PHP-CGI per il server Web Lighttpd.
cgi.fix_pathinfo=1
Salva e chiudi.
Quindi, avvia il servizio PHP-FPM e aggiungilo all'avvio del sistema.
systemctl start php-fpm
systemctl enable php-fpm
Il servizio PHP-FPM è attivo e funzionante, verifica utilizzando il comando seguente.
ss -plnt
systemctl status php-fpm
Di seguito è riportato il risultato che otterrai.
Di conseguenza, PHP-FPM è attivo e funzionante sul server CentOS 8 con l'indirizzo IP locale e la porta '9000'.
Fase 4 - Configurazione di Lighttpd e PHP-FPM
In questo passaggio, configureremo Lighttpd per farlo funzionare con la nostra installazione PHP-FPM.
Per impostazione predefinita, Lighttpd può essere utilizzato per servire l'applicazione Web PHP in due modi:
- Servire tramite il servizio PHP-FPM
- Servire tramite PHP-CI autogenerante
Per fare ciò, dobbiamo abilitare il modulo FastCGI sul server Web Lighttpd e aggiungere la nostra configurazione al file di configurazione del modulo FastCGI.
- Abilita modulo FastCGI
Prima di andare oltre, vai nella directory '/etc/lighttpd/' e modifica la configurazione 'modules.conf' usando l'editor vim.
cd /etc/lighttpd/
vim modules.conf
Decommenta il modulo 'FastCGI' come di seguito.
##
## FastCGI (mod_fastcgi)
##
include "conf.d/fastcgi.conf"
Salva e chiudi.
Successivamente, dobbiamo aggiungere la nostra configurazione PHP al file di configurazione 'conf.d/fastcgi.conf'.
All'interno della directory '/etc/lighttpd', modifica la configurazione di FastCGI 'conf.d/fastcgi.conf' usando l'editor vim.
vim conf.d/fastcgi.conf
- Utilizzo con il servizio PHP-FPM
Se desideri utilizzare il servizio PHP-FPM, che è già in esecuzione sull'indirizzo IP locale con porta TCP '9000', incolla la seguente configurazione.
fastcgi.server += ( ".php" =>
((
"host" => "127.0.0.1",
"port" => "9000",
"broken-scriptfilename" => "enable"
))
)
Salva e chiudi.
- Utilizzo del servizio PHP di generazione automatica
Quindi, se desideri utilizzare PHP-CGI con generazione automatica per Lighttpd, incolla la seguente configurazione.
fastcgi.server = ( ".php" =>
((
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/var/run/lighttpd/php.socket",
"max-procs" => 4,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "",
"PHP_FCGI_MAX_REQUESTS" => "500"
),
"broken-scriptfilename" => "enable"
))
)
Salva e chiudi.
Quindi, crea una nuova directory '/var/run/lighttpd' e cambia la proprietà di quella directory nell'utente 'lighttpd'.
mkdir -p /var/run/lighttpd
sudo chown -R lighttpd:lighttpd /var/run/lighttpd
Ora riavvia il servizio Lighttpd per applicare la nuova configurazione.
systemctl restart lighttpd
Assicurati che non ci siano errori e, di conseguenza, la configurazione di Lighttpd con il servizio PHP-FPM o utilizzando la generazione di PHP-CGI è stata completata correttamente.
Fase 5 - Test
Per testare la nostra installazione LLMP, creeremo un nuovo file phpinfo nella directory principale del documento Lighttpd predefinita.
Vai alla directory '/var/www/lighttpd' e crea un nuovo file php 'info.php' usando vim editor.
cd /var/www/lighttpd/
vim info.php
Incolla il seguente script al suo interno.
<?php
phpinfo();
?>
Salva e chiudi.
Quindi, apri il tuo browser web e digita l'indirizzo IP del server seguito dal file 'info.php' come di seguito.
http://192.168.1.50/info.php
Ora otterrai il risultato come di seguito.
Come si può vedere, PHP-FPM funziona con il web server Lighttpd.
Di conseguenza, l'installazione di LLMP Stack (Linux, Lighttpd, MariaDB e PHP-FPM) sul server CentOS 8 è stata completata con successo.
Passaggio 6 - Aggiuntivo:verifica dei servizi PHP e Lighttpd
Se stai eseguendo Lighttpd con il servizio PHP generato da slef utilizzando l'ocnfigurazione di seguito.
Puoi controllare il servizio PHP usando il comando qui sotto.
ss -pl | grep php
systemctl status php-fpm
Di seguito è riportato il risultato che otterrai.
Come si può vedere, il processo PHP autogenerato viene eseguito con un file socket 4. Anche il servizio PHP-FPM è inattivo, Lighttpd funziona ancora per l'elaborazione di applicazioni PHP.