Sécurité, vitesse, conformité et flexibilité — tous ces éléments décrivent lighttpd (pron. lighty) qui redéfinit rapidement l'efficacité d'un serveur Web ; car il est conçu et optimisé pour les environnements à hautes performances. Avec une faible empreinte mémoire par rapport aux autres serveurs Web, une gestion efficace de la charge du processeur et un ensemble de fonctionnalités avancées (FastCGI, SCGI, Auth, Output-Compression, URL-Rewriting et bien d'autres), lighttpd est la solution parfaite pour chaque serveur. qui souffre de problèmes de charge. Et le meilleur de tous, c'est une licence Open Source sous la licence BSD révisée.
Ici, je vais vous expliquer l'installation de Lighttd avec PHP et MySQL sur Fedora 20.
Installation de Lighttpd :
Pour commencer, nous allons installer Lighttpd.
Ouvrez le terminal et passez à l'utilisateur root.
[raj@itzgeek~/]$ su
Tapez la commande suivante sur le terminal, puis appuyez sur Entrée.
[root@itzgeek~/]# yum install lighttpd
Démarrez le Lighttpd en utilisant la commande suivante.
[root@itzgeek~/]# systemctl start lighttpd.service
Pour faire démarrer apache à chaque démarrage, tapez ce qui suit sur le terminal et appuyez sur Entrée.
[root@itzgeek~/]# systemctl enable lighttpd.service
Test Lighttpd :
Pour nous assurer que tout est correctement installé, nous allons maintenant tester Lighttpd pour nous assurer qu'il fonctionne correctement. Ouvrez n'importe quel navigateur Web, puis saisissez ce qui suit dans l'adresse Web :
http://localhost/ ou http://your.ip.addr.ess
Vous obtiendrez la page Web disant "Powered by lighttpd", la racine du document par défaut de lighttpd est /var/www/lighttpd sur Fedora ; le fichier de configuration est /etc/lighttpd/lighthttpd.conf et les configurations supplémentaires sont stockées dans le /etc/lighthttpd/conf.d/ répertoire.
Installation de MySQL :
Vient ensuite l'installation du serveur MariaDB, MariaDB est disponible sur le package Fedora ; il vous suffit donc d'exécuter la commande suivante pour l'installer.
[root@itzgeek~/]# yum install mariadb mariadb-server php-mysql
Démarrez le serveur MySQL.
[root@itzgeek~/]# systemctl start mariadb.service
Pour que MariaDB démarre à chaque démarrage, tapez ce qui suit sur le terminal et appuyez sur Entrée.
[root@itzgeek~/]# systemctl enable mariadb.service
Ensuite, sécurisez MariaDB en utilisant mysql_secure_installation commande.
Ce programme vous permet d'améliorer la sécurité de votre installation MySQL de la manière suivante :
- Vous pouvez définir un mot de passe pour
root
comptes. - Vous pouvez supprimer
root
comptes accessibles depuis l'extérieur de l'hôte local. - Vous pouvez supprimer les comptes d'utilisateurs anonymes.
- Vous pouvez supprimer le
test
base de données (qui par défaut est accessible à tous les utilisateurs, même les utilisateurs anonymes) et les privilèges qui permettent à quiconque d'accéder aux bases de données dont les noms commencent partest_
.
[root@geeksite~/]# mysql_secure_installation
REMARQUE :L'EXÉCUTION DE TOUTES LES PARTIES DE CE SCRIPT EST RECOMMANDÉE POUR TOUS LES SERVEURS MariaDB
EN UTILISATION DE PRODUCTION ! VEUILLEZ LIRE ATTENTIVEMENT CHAQUE ÉTAPE !
Afin de se connecter à MariaDB pour le sécuriser, nous aurons besoin du
mot de passe actuel pour l'utilisateur root. Si vous venez d'installer MariaDB, et
vous n'avez pas encore défini le mot de passe root, le mot de passe sera vide,
il vous suffit donc d'appuyer sur Entrée ici.
Entrez le mot de passe actuel pour root (entrez pour aucun) : <— Entrez le mot de passe root actuel
OK, mot de passe utilisé avec succès, continuez…
La définition du mot de passe root garantit que personne ne peut se connecter à l'utilisateur root MariaDB
sans l'autorisation appropriée.
Définir le mot de passe root ? [O/n] o <— Définir le mot de passe root
Nouveau mot de passe : <— Saisir le mot de passe root
Saisir à nouveau le nouveau mot de passe : <— Saisir à nouveau le mot de passe root
Mot de passe mis à jour avec succès !
Rechargement des tables de privilèges..
… Succès !
Par défaut, une installation MariaDB a un utilisateur anonyme, permettant à n'importe qui
de se connecter à MariaDB sans avoir à créer un compte utilisateur
pour lui. Ceci est uniquement destiné aux tests et à rendre l'installation
un peu plus fluide. Vous devez les supprimer avant de passer à un
environnement de production.
Supprimer les utilisateurs anonymes ? [O/n] o <— Supprimer l'utilisateur anonyme
… Succès !
Normalement, root ne devrait être autorisé à se connecter qu'à partir de "localhost". Cela
garantit que personne ne peut deviner le mot de passe root à partir du réseau.
Interdire la connexion root à distance ? [O/n] o <— connexion à distance root
… Succès !
Par défaut, MariaDB est livré avec une base de données nommée "test" à laquelle tout le monde peut
accéder. Ceci est également destiné uniquement aux tests et doit être supprimé
avant de passer à un environnement de production.
Supprimer la base de données de test et y accéder ? [O/n] y <— Supprimer la base de données de test
– Suppression de la base de données de test…
… Succès !
– Suppression des privilèges sur la base de données de test…
… Succès !
Le rechargement des tables de privilèges garantira que toutes les modifications apportées jusqu'à présent
prendront effet immédiatement.
Recharger les tables de privilèges maintenant ? [O/n] o <— Enregistrer les modifications
… Bien !
Nettoyer…
Terminé! Si vous avez terminé toutes les étapes ci-dessus, votre installation de MariaDB
doit maintenant être sécurisée.
Merci d'utiliser MariaDB !
Installation de PHP5 :
Ensuite, installez PHP 5 sur Fedora avec FastCGI, fedora fournit un package PHP5 compatible FastCGI. Nous pouvons installer en lançant la commande suivante.
[root@itzgeek~/]# yum install php-cli lighttpd-fastcgi
Configuration de PHP 5 :
Pour activer PHP5 dans Lighttpd, vous devrez modifier le fichier de configuration /etc/php.ini et décommenter la ligne cgi.fix_pathinfo=1 :
[root@itzgeek~/]# vi /etc/php.ini
[…]
; utiliser SCRIPT_FILENAME plutôt que PATH_TRANSLATED.
; http://php.net/cgi.fix-pathinfo
cgi.fix_pathinfo=1
[...]
Activation de FastCGI :
Pour activer le FastCGI, nous devons éditer le fichier suivant.
[root@itzgeek~/]# vi /etc/lighthttpd/modules.conf
Décommentez la ligne [Line No:132].
inclure "conf.d/fastcgi.conf"
Créez et activez l'autorisation d'exécuter Lighttpd.
[root@itzgeek~/]# mkdir /var/run/lighttpd[root@geeksite~/]# chown lighttpd.lighttpd /var/run/lighttpd
Modifiez le fichier suivant pour configurer FastCGI.
[root@itzgeek~/]# vi /etc/lighttpd/conf.d/fastcgi.conf
Ajoutez les lignes suivantes à la fin du fichier.
fastcgi.server =( ".php" =>( "localhost" =>
(
"socket" => "/var/run/lighttpd/php-fastcgi.socket",
"bin-path" => "/usr/bin/php-cgi",
"max-procs" => 5,
"bin-environment" => (
“PHP_FCGI_CHILDREN” => “16”,
“PHP_FCGI_MAX_REQUESTS” => “10000” ),
“broken-scriptfilename” => “enable”
)
)
)
Redémarrez maintenant tous les services requis.
[root@itzgeek~/]# systemctl restart lighttpd.service[root@itzgeek~/]# systemctl restart mysqld.service
Tester PHP :
Pour tester PHP, placez un fichier PHP dans le répertoire par défaut de Lighttpd. La racine du document du site Web par défaut est /var/www/lighttpd . Nous allons maintenant créer un petit fichier PHP (info.php) dans ce répertoire et l'appeler dans un navigateur. Le fichier affichera de nombreux détails utiles sur notre installation PHP, tels que la version PHP installée.
Dans le terminal copiez/collez la ligne suivante :
[root@itzgeek~/]# vi /var/www/lighttpd/info.php
Cela ouvrira un fichier appelé info.php .
Copiez/Collez cette ligne dans le fichier phpinfo :
phpinfo();?>Enregistrez et fermez le fichier. utilisez Échap + ;wq pour enregistrer le fichier.
Ouvrez maintenant votre navigateur Web et saisissez ce qui suit dans l'adresse Web :
http://localhost/info.php ou http://your.ip.add-ress/info.phpLa page ressemblera à ceci :
Faites défiler la section du navigateur vers les modules pour vérifier la prise en charge de MySQL. vous obtiendrez l'écran comme ci-dessous.
C'est tout !
Crédits :
Merci à Christian Foronda d'avoir fourni la configuration FastCGI.