« Installer Nginx MariaDB PHP7 (LEMP) sur CentOS 7 » : différence entre les versions
(Page créée avec « = Installer Nginx, MariaDB, PHP7 (LEMP) sur CentOS 7 = (brouillon) LEMP (Linux, ENginx, MariaDB, PHP) est un des grands classiques de l'installation de serveurs web. GNU... ») |
Aucun résumé des modifications |
||
(3 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
= Installer Nginx, MariaDB, PHP7 (LEMP) sur CentOS 7 = | = Installer Nginx, MariaDB, PHP7 (LEMP) sur CentOS 7 = | ||
[[Catégorie:Services Web]] | |||
( | 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 : | |||
<div class="code"> | |||
yum install -y mariadb-server mariadb | |||
</div> | |||
Démarrez et activez le service : | |||
<div class="code"> | |||
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) | |||
<div class="code"> | |||
mysql_secure_installation | |||
</div> | |||
== Installer | == 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 [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 install - | <div class="code"> | ||
yum --enablerepo=extras install centos-release-scl | |||
</div> | |||
Puis on installe les paquets suivants : | |||
<div class="code"> | |||
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 | |||
</div> | |||
== Installer | == Installer et configurer Nginx == | ||
Installez le paquet : | |||
yum install -y | <div class="code"> | ||
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é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 { | |||
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; | |||
} | |||
} | |||
</div> | |||
Ensuite, faites les modifications suivantes dans <tt>/etc/php-fpm.d/www.conf</tt>: | |||
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 <tt>;listen = 127.0.0.1:9000</tt>, ajouter: | |||
<div class="code"> | |||
listen = /var/run/php-fpm/php-fpm.sock | |||
</div> | |||
Démarrez et activez le service : | |||
<div class="code"> | |||
systemctl start nginx | |||
systemctl enable nginx | |||
</div> | |||
Vous avez maintenant un serveur LEMP opérationnel. | |||
=== Aller plus loin === | |||
Vous pouvez chercher d'autres paquets | Avez-vous besoin de bibliothèques PHP particulières? Vous pouvez chercher d'autres paquets PHP avec la commande : | ||
yum search php71|grep < | <div class="code"> | ||
yum search php71|grep ''nom_du_paquet_cherché'' | |||
</div> | |||
Parmi les autres paquets souvent installés, il y a par exemple : | Parmi les autres paquets souvent installés, il y a par exemple : | ||
yum install -y rh-php71-php-pdo.x86_64 | <div class="code"> | ||
yum install -y rh-php71-php-gd.x86_64 | yum install -y rh-php71-php-pdo.x86_64 | ||
yum install -y rh-php71-php-xml.x86_64 | yum install -y rh-php71-php-gd.x86_64 | ||
yum install -y rh-php71-php-xml.x86_64 | |||
</div> | |||
<br/> | |||
<br/> | |||
'''<b>[[Admin-index|@ Retour à la rubrique Administration système]]</b>'''<br/> | |||
<br/> | |||
{{Copy|2018|[[Utilisateur:Jiel|Jiel Beaumadier]]|FDL}} |
Dernière version du 5 novembre 2018 à 14:27
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
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. |