Comment installer Lighttpd avec PHP-FPM et MySQL sur Ubuntu 20.04 LTS

Lighttpd est un serveur Web open-source axé sur la simplicité et les hautes performances. C’est un serveur Web léger qui consomme peu de mémoire tout en restant conforme aux normes, à la sécurité et à la flexibilité. Le serveur Web Lighttpd fait partie de la pile LLMP, qui signifie Linux, Lighttpd, MySQL/MariaDB et PHP/PHP-FPM.

Dans ce tutoriel, nous allons te montrer comment installer et configurer la pile LLMP sur le serveur Ubuntu 20.04. Nous installerons le serveur Web Lighttpd avec le serveur de base de données MariaDB et le PHP-FPM sur la dernière version du serveur Ubuntu 20.04.

Prérequis

  • Serveur Ubuntu 20.04
  • Privilèges de racine
  • Comprendre les bases du serveur Ubuntu/Debian

Que ferons-nous ?

  • Installer le serveur Web Lighttpd
  • Installer et configurer le serveur de bases de données MariaDB
  • Installer et configurer PHP-FPM
  • Configurer Lighttpd et PHP-FPM
  • Tester

Étape 1 – Installer Lighttpd

Tout d’abord, nous allons installer le serveur web Lighttpd sur notre serveur Ubuntu 20.04. Les paquets Lighttpd sont disponibles par défaut sur le référentiel Ubuntu. Mets à jour tous les référentiels disponibles et installe Lighttpd à l’aide de la commande apt ci-dessous.

sudo apt update
sudo apt install lighttpd

Une fois l’installation terminée, démarre le service Lighttpd et ajoute-le au démarrage du système.

systemctl start lighttpd
systemctl enable lighttpd

Le service Lighttpd est en marche, vérifie-le à l’aide de la commande suivante.

systemctl status lighttpd

Voici le résultat que tu obtiendras.

Lance le service de serveur Web Lighttpd

Ensuite, ajoute les services HTTP, HTTPS et SSH au pare-feu ufw.

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https

Active le service de pare-feu ufw à l’aide de la commande ci-dessous.

sudo ufw enable

Tape‘y‘ pour activer le pare-feu ufw, et tu as ainsi activé le pare-feu sur le système Ubuntu.

ufw firewall ouvre les ports http et https

Ouvre maintenant ton navigateur Web et tape l’adresse IP du serveur dans la barre d’adresse.

http://10.3.3.40/

Et tu obtiendras la page index.html par défaut de Lighttpd.

Index.hmtl par défaut de Lighttpd

Le serveur Web Lighttpd a donc été installé sur le système Ubuntu 20.04.

Étape 2 – Installer et configurer le serveur MySQL

Dans cette étape, nous allons installer le serveur de base de données MySQL et configurer l’utilisateur root par défaut pour MySQL.

Installe le serveur MySQL à l’aide de la commande apt ci-dessous.

sudo apt install mysql-server mysql-client

Une fois l’installation terminée, démarre le service MySQL et ajoute-le au démarrage du système.

systemctl start mysql
systemctl enable mysql

Vérifie maintenant le service MySQL à l’aide de la commande ci-dessous.

systemctl status mysql

Voici le résultat que tu obtiendras.

Start MySQL Service

Comme résultat, le serveur de base de données MySQL est opérationnel sur le système Ubuntu.

Ensuite, exécute la commande ‘mysql_secure_installation’ ci-dessous pour configurer le mot de passe de la racine de MySQL.

mysql_secure_installation

Appuie sur le bouton‘Enter‘ pour continuer, tape ton nouveau mot de passe pour l’utilisateur racine de MySQL, et tape‘Y‘ pour toutes les options.

Press y|Y for Yes, any other key for No: 
Please set the password for root here.

New password:
Re-enter new password:

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y

Le mot de passe de la racine de MySQL a donc été configuré.

Ensuite, connecte-toi au shell MySQL en utilisant l’utilisateur root comme ci-dessous.

mysql -u root -p

Vérifie maintenant tous les utilisateurs disponibles sur MySQL en utilisant la requête suivante.

select User,Host from mysql.user;

Et tu obtiendras la liste des utilisateurs par défaut sur le serveur MySQL. Tape maintenant ‘exit’ pour te déconnecter du shell MySQL.

Utilisateurs de MySQL Check

L’installation et la configuration du serveur MySQL pour la pile LLMP ont donc été effectuées avec succès.

Étape 3 – Installation et configuration de PHP-FPM

Dans cette étape, nous allons installer les paquets PHP-FPM et les configurer pour qu’ils fonctionnent avec le serveur Web Lighttpd.

Installe les paquets PHP-FPM sur le système Ubuntu à l’aide de la commande apt ci-dessous.

sudo apt install php-fpm php-cgi php-mysql

La commande installera automatiquement la dernière version de PHP-FPM 7.4.

Une fois l’installation terminée, va dans le répertoire ‘/etc/php/7.4/fpm’ et modifie la configuration ‘php.ini’ à l’aide de l’éditeur vim.

cd /etc/php/7.4/fpm/
vim php.ini

Décommente la ligne suivante pour activer la prise en charge de FastCGI.

cgi.fix_pathinfo=1

Sauvegarde et ferme.

Ensuite, démarre le service PHP-FPM et ajoute-le au démarrage du système.

systemctl start php7.4-fpm
systemctl enable php7.4-fpm

Configurer PHP-FPM

Vérifie maintenant le service PHP-FPM à l’aide de la commande suivante.

ss -pl | grep php
systemctl status php7.4-fpm

Voici le résultat que tu obtiendras.

Vérifier le service PHP-FPM

Comme tu peux le voir, le service PHP-FPM est en place et fonctionne sur le système Ubuntu 20.04. Et par défaut, il fonctionne sous le fichier sock ‘/var/run/php/php7.4-fpm.sock’.

Et l’installation de PHP-FPM sur ubuntu 20.04 est terminée.

Étape 4 – Configurer Lighttpd et PHP-FPM

Pour cette étape, nous allons configurer Lighttpd avec PHP-FPM.

Va dans le répertoire ‘/etc/lighttpd/conf-available’ et tu obtiendras quelques configurations.

cd /etc/lighttpd/conf-available/

Copie la configuration PHP FastCGI par défaut ’15-fastcgi-php.conf’ et modifie-la en utilisant l’éditeur vim.

cp 15-fastcgi-php.conf 15-fastcgi-php.conf.orig
vim 15-fastcgi-php.conf

Tu obtiendras maintenant la configuration PHP FastCGI par défaut comme ci-dessous.

fastcgi.server += ( ".php" => 
    ((
        "bin-path" => "/usr/bin/php-cgi",
        "socket" => "/var/run/lighttpd/php.socket",
        "max-procs" => 1,
        "bin-environment" => (
            "PHP_FCGI_CHILDREN" => "4",
            "PHP_FCGI_MAX_REQUESTS" => "10000"
        ),
        "bin-copy-environment" => (
            "PATH", "SHELL", "USER"
        ),
        "broken-scriptfilename" => "enable"
    ))
)

La configuration par défaut fera en sorte que Lighttpd génère lui-même le PHP-CGI.

Pour que Lighttpd fonctionne avec le service PHP-FPM, remplace la configuration PHP-CGI par défaut par la configuration suivante.

fastcgi.server += ( ".php" =>
        ((
                "socket" => "/var/run/php/php7.4-fpm.sock",
                "broken-scriptfilename" => "enable"
        ))
)

Sauvegarde et ferme.

Ensuite, active le module Lighttpd fastcgi et fastcgi-php en utilisant la commande ci-dessous.

lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php

La commande créera un lien symbolique de la configuration des modules vers le répertoire ‘/etc/lighttpd/conf-enabled’.

Tu peux vérifier le répertoire ‘/etc/lighttpd/conf-enabled’ à l’aide de la commande suivante.

ls -lah /etc/lighttpd/conf-enabled/

Tu obtiendras les deux configurations fastcgi et fastcgi-php dans le répertoire ‘conf-enabled’.

Active FastCGI et FastCGI PHP Lighttpd

Ensuite, pour appliquer la nouvelle installation et configuration, redémarre le service Lighttpd.

systemctl restart lighttpd

Assure-toi qu’il n’y a pas d’erreur.

Et ainsi, la configuration de Lighttpd avec PHP-FPM a été effectuée avec succès.

Étape 5 – Test

Pour tester notre installation de LLMP Stack, nous allons créer un nouveau fichier script PHP info dans le répertoire racine du document par défaut ‘/var/www/html’.

Va dans le répertoire ‘/var/www/html’ et crée un nouveau fichier php ‘info.php’ en utilisant l’éditeur vim.

cd /var/www/html/
vim info.php

Colle le script suivant.

<?php
phpinfo();
?>

Sauvegarde et ferme.

Ensuite, ouvre ton navigateur Web et tape l’adresse IP du serveur avec le chemin ‘/info.php’ comme ci-dessous.

http://10.10.10.30/info.php

Et tu obtiendras le résultat comme ci-dessous.

phpinfo

Comme tu peux le voir, tu peux voir toutes les informations sur ton installation de Lighttpd et PHP-FPM.

Et par conséquent, l’installation de LLMP Stack sur Ubuntu 20.04 a été effectuée avec succès.

Vous aimerez aussi...