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 16.
Installation de Lighttpd :
Pour commencer, nous allons installer Lighttpd.
Ouvrez le terminal et passez à l'utilisateur root.
[raj@geeksite~/]$ su
Tapez la commande suivante sur le terminal, puis appuyez sur Entrée.
[root@geeksite~/]# yum install lighttpd
Démarrez le Lighttpd en utilisant la commande suivante.
[root@geeksite~/]# 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@geeksite~/]# 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 MySQL, MySQL est disponible sur le package Fedora; il vous suffit donc d'exécuter la commande suivante pour l'installer.
[root@geeksite~/]# yum install mysql mysql-server php-mysql
Démarrez le serveur MySQL.
[root@geeksite~/]# systemctl start mysqld.service
Pour que MySQL démarre à chaque démarrage, tapez ce qui suit sur le terminal et appuyez sur Entrée.
[root@geeksite~/]# systemctl enable mysqld.service
Ensuite, sécurisez MySQL 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 MySQL
SERVEURS EN UTILISATION DE PRODUCTION ! VEUILLEZ LIRE ATTENTIVEMENT CHAQUE ÉTAPE !
Pour se connecter à MySQL pour le sécuriser, nous aurons besoin du courant
mot de passe pour l'utilisateur racine. Si vous venez d'installer MySQL, et
vous n'avez pas défini le mot de passe root encore, le mot de passe sera vide,
vous devriez donc juste appuyer sur entrée ici.
Entrez le mot de passe actuel pour root (entrez pour aucun) : <– ENTER
OK, mot de passe utilisé avec succès, passons …
La définition du mot de passe racine assure que personne ne peut se connecter à MySQL
utilisateur racine sans l'autorisation appropriée.
Définir le mot de passe root ? [O/n] <– ENTRER
Nouveau mot de passe : <– votremotdepasseqlracine
Saisir à nouveau le nouveau mot de passe : <– votremotdepasseqlracine
Mot de passe mis à jour avec succès !
Rechargement des tableaux de privilèges..
… Succès !
Par défaut, une installation MySQL a un utilisateur anonyme, autorisant n'importe qui
pour se connecter à MySQL sans avoir avoir créé un compte d'utilisateur pour
eux. Ceci est uniquement pour les tests et pour faire l'installation
allez un un peu plus fluide. Vous devriez les enlever avant d'emménager dans un
environnement de production.
Supprimer les utilisateurs anonymes ? [O/n] <– ENTRER
… Succès !
Normalement, root doit être autorisé à se connecter depuis "localhost". Ceci
garantit que quelqu'un ne ne peut pas deviner le mot de passe racine à partir du réseau.
Interdire la connexion root à distance ? [O/n] <– ENTRER
… Succès !
Par défaut, MySQL est fourni avec une base de données nommée "test" que n'importe qui peut
accès. Ceci est également conçu uniquement pour les tests, et devrait être supprimé
avant de passer dans un environnement de production.
Supprimer la base de données de test et y accéder ? [O/n] <– ENTRER
– Suppression de la base de données de test…
… Succès !
– Suppression des privilèges sur la base de test …
… Succès !
Le rechargement des tableaux de privilèges garantira que toutes les modifications apportées jusqu'à ici
entrera en effet immédiatement.
Recharger les tableaux de privilèges maintenant ? [O/n] <– ENTRER
… Succès !
Nettoyage …
C'est ! Si vous avez effectué toutes les étapes ci-dessus, votre MySQL
l'installation devrait maintenant être sécurisée.
Merci d'utiliser MySQL !
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@geeksite~/]# yum install php-cli lighttpd-fastcgi
Configuration de PHP 5 :
Pour activer PHP5 dans Lighttpd, vous devrez modifier le fichier de configuration /etc/php5/cgi/php.ini et décommenter la ligne cgi.fix_pathinfo=1 :
[root@ubuntu~/]# vi /etc/php5/cgi/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 modifier le fichier suivant.
[root@geeksite~/]# vi /etc/lighttpd/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@geeksite~/]# mkdir /var/run/lighttpd[root@geeksite~/]# chown lighttpd.lighttpd /var/run/lighttpd
Modifiez le fichier suivant pour configurer FastCGI.
[root@geeksite~/]# 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" => "activer" ) ) )
Redémarrez maintenant tous les services requis.
[root@geeksite~/]# systemctl restart lighttpd.service[root@geeksite~/]# 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@geeksite~/]# 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.