Installer Nginx MariaDB PHP7 (LEMP) sur CentOS 7

De Lea Linux
Aller à la navigation Aller à la recherche

Installer Nginx, MariaDB, PHP7 (LEMP) sur CentOS 7

LEMP (Linux, ENginx, MariaDB, PHP) est un des grands classiques de l'installation de serveurs web. GNU/Linux est le système d'exploitation, ENginx un serveur web, MariaDB le serveur de base de données (ex MySQL) et PHP le langage de programmation.

Installer MariaDB

Installez les paquets nécessaires :

yum install -y mariadb-server mariadb

Démarrez et activez le service :

systemctl start mariadb
systemctl enable mariadb

Exécutez ce script pour une installation sécurisée (répondez oui à toutes les questions et définissez un mot de passe pour la base)

mysql_secure_installation

Installer PHP

PHP v7.1 n'est pas présent dans la base de CentOS7. Pour l'installer, il nous faut donc utiliser un dépôt tierce. Ici, on choisit le dépôt Software Collections qui est un dépôt considéré comme sûr par CentOS. On active donc ce dépôt :

yum --enablerepo=extras install centos-release-scl

Puis on installe les paquets suivants :

yum install -y rh-php71.x86_64
yum install -y rh-php71-php-fpm.x86_64
yum install -y rh-php71-php-mysqlnd-7.1.8-1.el7.x86_64.rpm

Installer et configurer Nginx

Installez le paquet :

yum install -y nginx

On crée maintenant un fichier de configuration pour notre site, indiquant que l'on veut utiliser PHP. Pour cela, créez un nouveau fichier /etc/nginx/conf.d/monsite.conf avec le contenu ci-dessous, où ip_du_serveur étant l'adresse IP publique de votre serveur (par exemple, 198.100.145.115) :

server {

   listen   80;
   server_name  ip_du_serveur;
   root   /usr/share/nginx/html;
   index index.php index.html index.htm;
   location / {
       try_files $uri $uri/ =404;
   }
   error_page 404 /404.html;
   error_page 500 502 503 504 /50x.html;
   location = /50x.html {
       root /usr/share/nginx/html;
   }

   location ~ \.php$ {
       try_files $uri =404;
       fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
       fastcgi_index index.php;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include fastcgi_params;
   }

}

Ensuite, faites les modifications suivantes dans /etc/php-fpm.d/www.conf:

Remplacez :

  • user = apache par user = nginx
  • group = apache par group = nginx
  • listen.owner = nobody par listen.owner = nginx
  • listen.group = nobody par listen.group = nginx

Sous ;listen = 127.0.0.1:9000, ajouter:

listen = /var/run/php-fpm/php-fpm.sock

Démarrez et activez le service :

systemctl start nginx
systemctl enable nginx

Vous avez maintenant un serveur LEMP opérationnel.

Aller plus loin

Avez-vous besoin de bibliothèques PHP particulières? Vous pouvez chercher d'autres paquets PHP avec la commande :

yum search php71|grep nom_du_paquet_cherché

Parmi les autres paquets souvent installés, il y a par exemple :

yum install -y rh-php71-php-pdo.x86_64
yum install -y rh-php71-php-gd.x86_64
yum install -y rh-php71-php-xml.x86_64



@ Retour à la rubrique Administration système

Copyright

© 2018 Jiel Beaumadier

Tête de GNU Vous avez l'autorisation de copier, distribuer et/ou modifier ce document suivant les termes de la GNU Free Documentation License, Version 1.2 ou n'importe quelle version ultérieure publiée par la Free Software Foundation; sans section invariante, sans page de garde, sans entête et sans page finale.