« Installer Nginx MariaDB PHP7 (LEMP) sur CentOS 7 » : différence entre les versions

De Lea Linux
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
= Installer Nginx, MariaDB, PHP7 (LEMP) sur CentOS 7 =
= Installer Nginx, MariaDB, PHP7 (LEMP) sur CentOS 7 =
 
[[Catégorie:Services Web]]
(brouillon)


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.
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.
Ligne 7 : Ligne 6 :
== Installer MariaDB ==
== Installer MariaDB ==


Installer les paquets nécessaires :
Installez les paquets nécessaires :


yum install -y mariadb-server mariadb
<div class="code">
yum install -y mariadb-server mariadb
</div>


Démarrer et activer le service :
Démarrez et activez le service :


systemctl start mariadb
<div class="code">
systemctl enable mariadb
systemctl start mariadb
systemctl enable mariadb
</div>


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)
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
<div class="code">
mysql_secure_installation
</div>


== Installer PHP ==
== Installer PHP ==
Ligne 24 : Ligne 29 :
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 [https://wiki.centos.org/AdditionalResources/Repositories/SCL Software Collections] qui est un dépôt considéré comme [https://wiki.centos.org/fr/AdditionalResources/Repositories/ sûr par CentOS]. On active donc ce dépôt :
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 [https://wiki.centos.org/AdditionalResources/Repositories/SCL Software Collections] qui est un dépôt considéré comme [https://wiki.centos.org/fr/AdditionalResources/Repositories/ sûr par CentOS]. On active donc ce dépôt :


yum --enablerepo=extras install centos-release-scl
<div class="code">
yum --enablerepo=extras install centos-release-scl
</div>


Puis on installe les paquets suivants :
Puis on installe les paquets suivants :


yum install -y rh-php71.x86_64
<div class="code">
yum install -y rh-php71-php-fpm.x86_64
yum install -y rh-php71.x86_64
yum install -y rh-php71-php-mysqlnd-7.1.8-1.el7.x86_64.rpm
yum install -y rh-php71-php-fpm.x86_64
yum install -y rh-php71-php-mysqlnd-7.1.8-1.el7.x86_64.rpm
</div>


== Installer et configurer Nginx ==
== Installer et configurer Nginx ==


Installer le paquet :
Installez le paquet :


<div class="code">
yum install -y nginx
yum install -y nginx
</div>


On crée maintenant un fichier de configuration pour notre site, indiquant que l'on veut utiliser php. Pour cela, créer 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) :
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 <tt>/etc/nginx/conf.d/monsite.conf</tt> avec le contenu ci-dessous, où ''ip_du_serveur'' étant l'adresse IP publique de votre serveur (par exemple, 198.100.145.115) :


<div class="code">
server {
server {
     listen  80;
     listen  80;
Ligne 64 : Ligne 76 :
     }
     }
}
}
</div>


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


Remplacez :
Remplacez :
Ligne 73 : Ligne 86 :
* ''listen.group = nobody'' par ''listen.group = nginx''
* ''listen.group = nobody'' par ''listen.group = nginx''


Sous ;listen = 127.0.0.1:9000, ajouter:
Sous <tt>;listen = 127.0.0.1:9000</tt>, ajouter:


listen = /var/run/php-fpm/php-fpm.sock
<div class="code">
listen = /var/run/php-fpm/php-fpm.sock
</div>


Démarrez et activez le service :
Démarrez et activez le service :


systemctl start nginx
<div class="code">
systemctl enable nginx
systemctl start nginx
systemctl enable nginx
</div>


=== 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 :


<div class="code">
yum search php71|grep ''nom_du_paquet_cherché''
</div>


Vous pouvez chercher d'autres paquets php particulier avec la commande :
Parmi les autres paquets souvent installés, il y a par exemple :


yum search php71|grep <paquet_cherché>
<div class="code">
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
</div>


Parmi les autres paquets souvent installés, il y a par exemple :
<br/>
<br/>
'''<b>[[Admin-index|@ Retour à la rubrique Administration système]]</b>'''<br/>
<br/>


yum install -y rh-php71-php-pdo.x86_64
{{Copy|2018|[[Utilisateur:Jiel|Jiel Beaumadier]]|FDL}}
yum install -y rh-php71-php-gd.x86_64
yum install -y rh-php71-php-xml.x86_64

Version du 5 novembre 2018 à 13:25

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.