Présentation
La pile LAMP est un ensemble de logiciels open source utilisés pour le développement d'applications Web. Il se compose d'un Linux système d'exploitation, un Apache Serveur HTTP, le MySQL système de gestion de base de données et PHP langage de programmation.
Dans ce didacticiel, découvrez comment installer la pile LAMP sur CentOS 8.
Prérequis
- Un serveur exécutant CentOS 8 Linux
- Une fenêtre de terminal/ligne de commande (Rechercher> terminal)
- Un compte utilisateur avec sudo ou racine privilèges
- Le miam et les gestionnaires de packages RPM, inclus par défaut
Étape 1 :Mettre à jour les progiciels du système
Ouvrez une fenêtre de terminal et mettez à jour le référentiel de packages avant d'installer un nouveau logiciel :
sudo yum update
Étape 2 :Installez Apache
1. Installez Apache Web Services avec la commande :
sudo yum -y install httpd
2. Ensuite, démarrez le service Apache en exécutant :
sudo systemctl start httpd.service
3. Pour vérifier qu'Apache est en cours d'exécution, ouvrez un navigateur Web et accédez à l'adresse IP publique du serveur. Il devrait afficher la page de test Apache, comme dans l'image ci-dessous.
Étape 3 :Installer MySQL
La troisième couche de la pile LAMP est MySQL ou MariaDB. Les deux sont des systèmes de gestion de base de données open source utilisés pour stocker et gérer les données sur votre site Web.
Dans cet exemple, le didacticiel inclut une installation de MySQL. Alternativement, vous pouvez installer MariaDB.
1. Commencez par ajouter le référentiel MySQL :
rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
2. Vérifiez le référentiel en tapant :
sudo yum repolist all |grep mysql | grep enabled
La sortie doit afficher une liste des différentes options MySQL disponibles.
3. Maintenant, installez MySQL :
sudo yum --disablerepo=AppStream install -y mysql-community-server
4. Ensuite, activez le service MySQL et configurez-le pour qu'il démarre au démarrage :
sudo systemctl start mysqld
sudo systemctl enable mysqld
5. Vérifiez si le service fonctionne correctement avec la commande :
sudo systemctl status mysql
La sortie doit afficher le service est actif (en cours d'exécution) .
Étape 4 :Configurer la sécurité MySQL
L'étape suivante consiste à configurer les paramètres de sécurité MySQL de base.
1. Commencez par afficher le mot de passe root temporaire de MySQL :
cat /var/log/mysqld.log | grep -i 'temporary password'
Le système affiche le mot de passe MySQL temporaire.
2. Ensuite, exécutez la commande :
sudo mysql_secure_installation
Fournissez le mot de passe root MySQL reçu à l'étape précédente.
3. Ensuite, saisissez et ressaisissez un nouveau mot de passe, en vous assurant qu'il respecte les normes de sécurité du mot de passe.
4. Après la mise à jour du mot de passe, vous êtes à nouveau invité à modifier le mot de passe root. Pour ce faire, tapez y
et appuyez sur Entrée .
5. La sortie affiche la force estimée du mot de passe. Appuyez sur y
pour continuer avec le mot de passe fourni.
Répondez au reste des questions avec y
et Entrez :
- Supprimer les utilisateurs anonymes ? (y )
- Interdire la connexion root à distance ? (y )
- Supprimer la base de données de test et y accéder ? (y )
- Recharger les tables de privilèges maintenant ? (y )
Avec cela, MySQL est sécurisé.
Étape 5 :Installer PHP et les modules de support
Configurez la couche finale en installant le langage de programmation PHP et les modules de support pour phpMyAdmin :
sudo yum -y install php php-pdo php-pecl-zip php-json php-common php-fpm php-mbstring php-cli php-mysqlnd wget upzip
Ensuite, activez le module PHP pour qu'il fonctionne avec Apache en redémarrant le serveur Web :
sudo systemctl restart httpd.service
Étape 6 :Ajustez le pare-feu
Si vous avez configuré un pare-feu sur CentOS, vous devez ajuster la configuration pour autoriser les connexions Apache.
1. Ouvrez le pare-feu pour le trafic HTTP avec la commande :
sudo firewall-cmd --permanent --zone=public --add-service=http
2. Ensuite, ajustez-le pour autoriser également le trafic HTTPS :
sudo firewall-cmd --permanent --zone=public --add-service=https
3. Redémarrez le pare-feu pour que les modifications prennent effet :
sudo firewall-cmd --reload
4. Cochez pour vérifier que les routes HTTP et HTTPS sont désormais ouvertes en permanence en exécutant :
sudo firewall-cmd --permanent --list-all
La sortie doit afficher http et https dans la liste des services.
Étape 7 :Tester PHP avec Apache
Apache crée un fichier racine Web dans le répertoire de site Web par défaut /var/www/html/ . Pour vérifier si PHP est correctement configuré en exécutant un test à partir de ce répertoire.
1. Créez un info.php fichier dans le répertoire :
sudo vim /var/www/html/info.php
2. Ajoutez ensuite le contenu suivant :
<?php
phpinfo ();
?>
3. Enregistrer et quitter le fichier.
4. Maintenant, vérifiez si PHP fonctionne correctement. Ouvrez un navigateur Web et accédez à l'URL (en remplaçant ip_address
avec l'IP publique du serveur):
http://ip_address/info.php
Le navigateur doit afficher le contenu, comme dans l'image ci-dessous.