Installation LAMP · 8 min read · Dec 06, 2025

Comment installer Apache, PHP 7.2 et MySQL sur CentOS 7.4 (LAMP)

Ce tutoriel montre comment installer un serveur web Apache sur un serveur CentOS 7 avec PHP (mod_php) et une base de données MySQL. L’acronyme LAMP signifie L inux, A pache, M ySQL, P HP.

Ce tutoriel mis à jour montre l’installation des dernières versions de PHP (7.0, 7.1 et 7.2) sur CentOS 7.4.

1 Remarque préliminaire

Dans ce tutoriel, j’utilise le nom d’hôte server1.example.com avec l’IP p 192.168.1.100. Ces paramètres peuvent différer pour vous, donc vous devez les remplacer là où c’est approprié.

Je vais ajouter le dépôt EPEL ici pour installer la dernière version de phpMyAdmin comme suit :

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*  
yum -y install epel-release

Pour éditer des fichiers dans le shell, j’installerai l’éditeur nano. Si vous préférez vi pour l’édition de fichiers, alors passez cette étape.

yum -y install nano

2 Installation de MySQL / MariaDB

MariaDB est un fork de MySQL du développeur original de MySQL, Monty Widenius. MariaDB est compatible avec MySQL et j’ai choisi d’utiliser MariaDB ici au lieu de MySQL. Exécutez cette commande pour installer MariaDB avec yum :

yum -y install mariadb-server mariadb

Ensuite, nous créons les liens de démarrage système pour MySQL (afin que MySQL démarre automatiquement chaque fois que le système démarre) et démarrons le serveur MySQL :

systemctl start mariadb.service  
systemctl enable mariadb.service

Définissez des mots de passe pour le compte root de MySQL :

mysql_secure_installation
[root@server1 ~]# mysql_secure_installation  

NOTE : L'EXÉCUTION DE TOUTES LES PARTIES DE CE SCRIPT EST RECOMMANDÉE POUR TOUS LES SERVEURS MariaDB EN UTILISATION PRODUCTION !  VEUILLEZ LIRE CHAQUE ÉTAPE ATTENTIVEMENT !  

Pour 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 que vous n'avez pas encore défini le mot de passe root, le mot de passe sera vide, donc vous devez juste appuyer sur entrer ici.  

Entrez le mot de passe actuel pour root (entrer pour aucun) : <--ENTRER  
OK, mot de passe utilisé avec succès, passage à la suite...  

Définir le mot de passe root ? [Y/n]   
Nouveau mot de passe : <--votremotdepassemariadb  
Ressaisir le nouveau mot de passe : <--votremotdepassemariadb  
Mot de passe mis à jour avec succès !  
Rechargement des tables de privilèges..  
 ... Succès !  
  
Par défaut, une installation de MariaDB a un utilisateur anonyme, permettant à quiconque de se connecter à MariaDB sans avoir à créer un compte utilisateur pour eux.  Ceci est destiné uniquement aux tests, et pour rendre l'installation un peu plus fluide.  Vous devriez les supprimer avant de passer à un environnement de production.  

Supprimer les utilisateurs anonymes ? [Y/n] <--ENTRER  
 ... Succès !  

Normalement, root ne devrait être autorisé à se connecter que depuis 'localhost'.  Cela garantit que personne ne peut deviner le mot de passe root depuis le réseau.  

Interdire la connexion root à distance ? [Y/n] <--ENTRER  
 ... Succès !  

Par défaut, MariaDB est livré avec une base de données nommée 'test' à laquelle quiconque peut accéder.  Ceci est également destiné uniquement aux tests, et devrait être supprimé avant de passer à un environnement de production.  

Supprimer la base de données de test et l'accès à celle-ci ? [Y/n] <--ENTRER  
 - 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 !  

Recharger les tables de privilèges garantira que tous les changements effectués jusqu'à présent prendront effet immédiatement.  

Recharger les tables de privilèges maintenant ? [Y/n] <--ENTRER  
 ... Succès !  

Nettoyage...  
  
Tout est fait !  Si vous avez complété toutes les étapes ci-dessus, votre installation de MariaDB devrait maintenant être sécurisée.  
  
Merci d'utiliser MariaDB !  
[root@server1 ~]#

## 3 Installation d'Apache

CentOS 7 est livré avec Apache 2.4. Apache est directement disponible en tant que package CentOS 7, donc nous pouvons l'installer comme ceci :

yum -y install httpd


Voici une capture d'écran du processus d'installation.

![Installer le serveur http Apache sur CentOS](/files/e10c2b3e-d642-4acb-b0b8-4838f2f5d35b.png)

Maintenant, configurez votre système pour démarrer Apache au démarrage...

systemctl start httpd.service

systemctl enable httpd.service


Pour pouvoir accéder au serveur web de l'extérieur, nous devons ouvrir les ports HTTP (80) et HTTPS (443) dans le pare-feu. Le pare-feu par défaut sur CentOS est firewalld qui peut être configuré avec la commande firewalld-cmd.

firewall-cmd –permanent –zone=public –add-service=http
firewall-cmd –permanent –zone=public –add-service=https
firewall-cmd –reload


Maintenant, dirigez votre navigateur vers l'adresse IP de votre serveur, dans mon cas http://192.168.1.100, et vous devriez voir la page de placeholder d'Apache :

![Serveur web Apache démarré sur CentOS 7](/files/8cec8f2a-56c2-4d29-a22a-59f28e11a677.png)

## 4 Installation de PHP

La version de PHP qui est livrée avec CentOS par défaut est assez ancienne (PHP 5.4). Par conséquent, je vais vous montrer dans ce chapitre quelques options pour installer des versions plus récentes de PHP comme PHP 7.0 ou 7.1 à partir du dépôt Remi.

Ajoutez le dépôt Remi CentOS.

rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm


Installez yum-utils car nous avons besoin de l'utilitaire yum-config-manager.

yum -y install yum-utils


et exécutez yum update

yum update


Maintenant, vous devez choisir quelle version de PHP vous souhaitez utiliser sur le serveur. Si vous souhaitez utiliser PHP 5.4, alors passez au chapitre 4.1. Pour installer PHP 7.0, suivez les commandes dans le chapitre 4.2, pour PHP 7.1 chapitre 4.3 et pour PHP 7.1, utilisez le chapitre 4.4 à la place. Suivez juste un des chapitres 4.x et pas tous, car vous ne pouvez utiliser qu'une seule version de PHP à la fois avec Apache mod_php.

### 4.1 Installer PHP 5.4

Pour installer PHP 5.4, exécutez cette commande :

yum -y install php


### 4.2 Installer PHP 7.0

Nous pouvons installer PHP 7.0 et le module Apache PHP 7.0 comme suit :

yum-config-manager –enable remi-php70

yum -y install php php-opcache


### 4.3 Installer PHP 7.1

Si vous souhaitez utiliser PHP 7.1 à la place, utilisez :

yum-config-manager –enable remi-php71

yum -y install php php-opcache


### 4.4 Installer PHP 7.2

Si vous souhaitez utiliser PHP 7.2 à la place, utilisez :

yum-config-manager –enable remi-php72

yum -y install php php-opcache


Dans cet exemple et dans la machine virtuelle téléchargeable, j'utiliserai PHP 7.2.

Nous devons redémarrer Apache pour appliquer les changements :

systemctl restart httpd.service


## 5 Tester PHP / Obtenir des détails sur votre installation PHP

Le répertoire racine du site web par défaut est /var/www/html. Nous allons créer un petit fichier PHP (info.php) dans ce répertoire et l'appeler dans un navigateur pour tester l'installation de PHP. Le fichier affichera de nombreux détails utiles sur notre installation PHP, comme la version de PHP installée.

nano /var/www/html/info.php


Maintenant, nous appelons ce fichier dans un navigateur (par exemple http://192.168.1.100/info.php) :

![PHP 7.2 installé sur CentOS 7](/files/e8b6139e-b42c-436a-8ca6-9768fbe81358.png)

Comme vous le voyez, PHP 7.2 fonctionne, et il fonctionne via le gestionnaire Apache 2.0, comme indiqué dans la ligne Server API. Si vous faites défiler plus bas, vous verrez tous les modules qui sont déjà activés dans PHP. MySQL n'est pas listé là, ce qui signifie que nous n'avons pas encore de support MySQL dans PHP.

## 6 Obtenir le support MySQL dans PHP

Pour obtenir le support MySQL dans PHP, nous pouvons installer le package php-mysqlnd. C'est une bonne idée d'installer d'autres modules PHP car vous pourriez en avoir besoin pour vos applications. Vous pouvez rechercher les modules PHP5 disponibles comme ceci :

yum search php


Choisissez ceux dont vous avez besoin et installez-les comme ceci :

yum -y install php-mysqlnd php-pdo


Dans l'étape suivante, j'installerai quelques modules PHP courants qui sont requis par des systèmes CMS comme Wordpress, Joomla et Drupal :

yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel


Maintenant, redémarrez le serveur web Apache :

systemctl restart httpd.service


Maintenant, rechargez http://192.168.1.100/info.php dans votre navigateur et faites défiler à nouveau jusqu'à la section des modules. Vous devriez maintenant trouver de nombreux nouveaux modules comme curl etc. :

![Support MySQL ajouté à PHP 7.2 sur CentOS](/files/07c9b286-5edf-466d-914a-c49a03461cb3.png)

Si vous n'avez plus besoin de la sortie d'informations PHP, alors supprimez ce fichier pour des raisons de sécurité.

rm /var/www/html/info.php


## 7 Installation de phpMyAdmin

phpMyAdmin est une interface web à travers laquelle vous pouvez gérer vos bases de données MySQL.  
phpMyAdmin peut maintenant être installé comme suit :

yum -y install phpMyAdmin


Maintenant, nous configurons phpMyAdmin. Nous changeons la configuration d'Apache afin que phpMyAdmin autorise les connexions non seulement depuis localhost (en commentant la section  et en ajoutant la ligne 'Require all granted') :

nano /etc/httpd/conf.d/phpMyAdmin.conf

[…]
Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin

AddDefaultCharset UTF-8


# Apache 2.4

Require all granted


# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1

    Options none
    AllowOverride Limit
    Require all granted

[…]


Ensuite, nous changeons l'authentification dans phpMyAdmin de cookie à http :

nano /etc/phpMyAdmin/config.inc.php

[…]
$cfg[‘Servers’][$i][‘auth_type’] = ‘http’; // Méthode d’authentification (config, http ou basée sur cookie)?
[…]


Redémarrez Apache :

systemctl restart httpd.service


Ensuite, vous pouvez accéder à phpMyAdmin sous http://192.168.1.100/phpmyadmin/ :

![PHPMyAdmin installé sur CentOS 7.4](/files/e052d58a-22bf-4759-9da1-aaca6e940c94.png)

## 8 Télécharger en tant que machine virtuelle

Cette configuration est disponible en tant que téléchargement de machine virtuelle au format ova/ovf (compatible avec VMWare et Virtualbox) pour les abonnés de howtoforge.

Détails de connexion pour la VM

- Le mot de passe root Linux est : howtoforge.
- Le mot de passe root MySQL est : howtoforge

Veuillez changer les deux mots de passe lors de la première connexion.

- L'adresse IP de la VM est 192.168.1.100

## 9 Liens

Apache : http://httpd.apache.org/  
PHP : http://www.php.net/  
MySQL : http://www.mysql.com/  
CentOS : http://www.centos.org/  
phpMyAdmin : http://www.phpmyadmin.net/
Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.