Dans ce tutoriel, nous allons montrer comment installer et déployer Lighttpd sur un VPS Debian 9 avec prise en charge FPM/FastCGI.
Lighttpd est un serveur web gratuit, open-source et performant développé par Jan Kneschke. Il a une faible empreinte mémoire par rapport aux autres serveurs Web et est spécialement conçu pour les environnements à vitesse critique. Il est sécurisé, rapide et peut gérer jusqu'à 10 000 connexions en parallèle sur un seul serveur. Il est utilisé par de nombreux sites Web, notamment YouTube, Bloglines, WikiMedia et bien d'autres. Lighttpd est livré avec un riche ensemble de fonctionnalités, telles que FastCGI, SCGI, Auth, URL-Rewriting, Output-Compression, mécanisme d'événement, etc. Ces fonctionnalités combinées constituent une solution de serveur Web attrayante et performante.
Commençons par l'installation.
Prérequis
- Pour les besoins de ce didacticiel, nous utiliserons un VPS Debian 9.
- Un accès root SSH complet ou un utilisateur avec des privilèges sudo est également requis.
- Un nom de domaine valide est pointé avec l'adresse IP de votre serveur. Dans ce tutoriel, nous utiliserons
test.example.com
.
Étape 1 :Connectez-vous via SSH et mettez à jour le système
Tout d'abord, nous allons devoir nous connecter à notre serveur en utilisant SSH. Vous pouvez le faire en saisissant cette commande :
ssh root@IP_Address -p Port_Number
N'oubliez pas de remplacer "root" par votre nom d'utilisateur si vous n'utilisez pas l'utilisateur root. Modifiez "IP_Address" et "Port_Number" en fonction de l'adresse IP et du numéro de port SSH de votre serveur.
Une fois connecté, vous devez mettre à jour tous vos packages vers leurs dernières versions disponibles.
apt-get update -y apt-get upgrade -y
Une fois les mises à jour terminées, nous pouvons passer à l'étape suivante.
Étape 2 :Installer le serveur MariaDB
Tout d'abord, nous allons installer le serveur de base de données MariaDB en exécutant la commande suivante :
apt-get install mariadb-server mariadb-client
Une fois l'installation terminée, démarrez le service MariaDB et autorisez-le à démarrer après le redémarrage du système :
systemctl start mariadb systemctl enable mariadb
Ensuite, connectez-vous au shell MariaDB avec la commande suivante :
mysql
Si tout va bien, vous devriez voir le résultat suivant :
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 4 Server version: 10.1.38-MariaDB-0+deb9u1 Debian 9.8 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Ensuite, sécurisez votre installation de MariaDB en utilisant le mysql_secure_installation
scénario. Ce script supprimera les utilisateurs anonymes, interdira la connexion root à distance et supprimera la base de données de test.
mysql_secure_installation
Répondez à toutes les questions comme indiqué ci-dessous :
Enter current password for root (enter for none): press [Enter] Set root password? [Y/n]: N 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
Une fois MariaDB sécurisée, vous pouvez passer à l'étape suivante.
Étape 3 :Installer Lighttpd
Par défaut, la dernière version de Lighttpd est disponible dans le référentiel par défaut de Debian 9. Vous pouvez l'installer en exécutant simplement la commande suivante :
apt-get install lighttpd
Une fois installé, démarrez le service Lighttpd et activez-le après le redémarrage du système à l'aide de la commande suivante :
systemctl start lighttpd systemctl enable lighttpd
Vous pouvez vérifier l'état de Lighttpd avec la commande suivante :
systemctl status lighttpd
Si tout va bien, vous devriez obtenir le résultat suivant :
● lighttpd.service - Lighttpd Daemon Loaded: loaded (/lib/systemd/system/lighttpd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-08-12 14:48:35 UTC; 29s ago Main PID: 2354 (lighttpd) CGroup: /system.slice/lighttpd.service └─2354 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf Aug 12 14:48:35 debian9 systemd[1]: Starting Lighttpd Daemon... Aug 12 14:48:35 debian9 systemd[1]: Started Lighttpd Daemon.
Maintenant, ouvrez un navigateur Web et visitez l'URL suivante http://test.example.com
. Vous devriez obtenir la page par défaut de Lighttpd comme indiqué ci-dessous :
La racine de document par défaut de Lighttpd est /var/ww/html
sur Debian 9, le fichier de configuration principal est/etc/lighttpd/lighttpd.conf
et d'autres fichiers de configuration se trouvent dans /etc/lighttpd/conf-available
répertoire.
Étape 4 :Installez PHP et PHP-FPM
Ensuite, nous allons installer PHP et PHP-FPM et leur permettre de fonctionner avec Lighttpd. Vous pouvez installer PHP avec toutes ses extensions nécessaires avec la commande suivante :
apt-get install php php-cli php-common php-fpm php-mysql
Une fois installé, nous devons modifier le fichier php.ini pour activer le support PHP pour Lighttpd.
nano /etc/php/7.0/fpm/php.ini
Remplacez la valeur cgi.fix_pathinfo par 1 :
cgi.fix_pathinfo=1
Enregistrez et fermez le fichier.
Par défaut, PHP-FPM écoute sur le socket UNIX /var/run/php7-fpm.sock
. Il va donc falloir modifier le fichier /etc/php/7.0/fpm/pool.d/www.conf
et configurez PHP-FPM pour qu'il écoute sur le socket TCP.
nano /etc/php/7.0/fpm/pool.d/www.conf
Trouvez la ligne :
listen = /run/php/php7.0-fpm.sock
Remplacez-le par la ligne suivante :
listen = 127.0.0.1:9000
Enregistrez et fermez le fichier. Ensuite, ouvrez le fichier 15-fastcg-php.conf
pour activer le support FastCGI dans Lighttpd :
nano /etc/lighttpd/conf-available/15-fastcgi-php.conf
Recherchez les lignes suivantes :
"bin-path" => "/usr/bin/php-cgi", "socket" => "/var/run/lighttpd/php.socket",
Remplacez-les par ce qui suit :
"host" => "127.0.0.1", "port" => "9000",
Enregistrez et fermez le fichier. Ensuite, activez les modules FastCGI et FastCGI-PHP avec la commande suivante :
lighty-enable-mod fastcgi lighty-enable-mod fastcgi-php
Enfin, redémarrez Lighttpd et le service PHP-FPM pour appliquer tous les changements de configuration :
systemctl restart php7.0-fpm systemctl restart lighttpd
Vous pouvez vérifier le PHP-FPM avec la commande suivante :
systemctl status php7.0-fpm
Si tout va bien, vous devriez obtenir le résultat suivant :
● php7.0-fpm.service - The PHP 7.0 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.0-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-08-12 14:55:36 UTC; 1min 56s ago Docs: man:php-fpm7.0(8) Main PID: 12288 (php-fpm7.0) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec" Tasks: 3 (limit: 7372) CGroup: /system.slice/php7.0-fpm.service ├─12288 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf) ├─12289 php-fpm: pool www └─12290 php-fpm: pool www Aug 12 14:55:36 debian9 systemd[1]: Stopped The PHP 7.0 FastCGI Process Manager. Aug 12 14:55:36 debian9 systemd[1]: Starting The PHP 7.0 FastCGI Process Manager... Aug 12 14:55:36 debian9 systemd[1]: Started The PHP 7.0 FastCGI Process Manager.
Étape 5 :Testez la prise en charge de PHP-FPM sur Lighttpd
Lighttpd est maintenant installé et configuré pour fonctionner avec FPM/FastCGI. Ensuite, nous devrons créer un fichier de configuration d'hôte virtuel pour Lighttpd afin de tester la prise en charge de PHP-FPM.
Commencez par créer un répertoire d'hôte virtuel avec la commande suivante :
mkdir /var/www/html/testsite
Ensuite, créez un fichier de configuration d'hôte virtuel avec la commande suivante :
nano /etc/lighttpd/conf-available/lighttpd.conf
Ajoutez les lignes suivantes :
$HTTP["host"] =="test.example.com" { server.document-root = "/var/www/html/testsite" index-file.names = ( "info.php" ) }
Enregistrez et fermez le fichier. Ensuite, activez l'hôte virtuel avec la commande suivante :
ln -s /etc/lighttpd/conf-available/lighttpd.conf /etc/lighttpd/conf-enabled/
Ensuite, créez un fichier info.php dans le répertoire /var/www/html/testsite pour tester la prise en charge de PHP-FPM :
nano /var/www/html/testsite/info.php
Ajoutez les lignes suivantes :
<?php phpinfo(); ?>
Ensuite, définissez l'autorisation correcte sur /var/www/html/testsite
avec la commande suivante :
chown -R www-data:www-data /var/www/html/testsite
Enfin, redémarrez le service Lighttpd avec la commande suivante :
systemctl restart lighttpd
Maintenant, ouvrez votre navigateur Web et tapez l'URL http://test.example.com
. Vous devriez voir que PHP fonctionne via FPM/FastCGI sur la page suivante :
Dans ce tutoriel, nous avons appris à installer Lighttpd sur un VPS Debian 9. Nous avons également appris comment activer MariaDB, PHP et PHP-FPM avec FastCGI dans Lighttpd. Pour plus d'informations, vous pouvez consulter la documentation officielle de Lighttpd.
Bien sûr, vous n'êtes pas obligé d'installer Lighttpd sur un VPS Debian 9 si vous utilisez l'une de nos solutions d'hébergement Debian géré, auquel cas vous pouvez simplement demander à nos administrateurs Linux experts d'installer Lighttpd sur un VPS Debian 9 pour vous. Ils sont disponibles 24h/24 et 7j/7 et prendront immédiatement en charge votre demande.
PS . Si vous avez aimé cet article sur comment installer Lighttpd sur un VPS Debian 9 , partagez-le avec vos amis sur les réseaux sociaux en utilisant les raccourcis de partage ci-dessous, ou laissez simplement un commentaire dans la section des commentaires. Merci.