Comment installer Lemp (Linux, Nginx, MariaDB, PHP-FPM) sur Debian 9 Stretch

Comment installer Lemp (Linux, Nginx, MariaDB, PHP-FPM) sur Debian 9 Stretch

Puisque Debian alimente un grand pourcentage de serveurs Web dans le monde entier, dans cet article, nous expliquerons comment installer le Lemp (Linux + Nginx + Mariadb + Php-fpm) Empiler sur Debian 9 Stretch comme alternative à LAMPE (Utilisez ce guide pour installer la lampe sur Debian 9).

De plus, nous montrerons comment effectuer un minimum Nginx / / Php-fpm Configuration afin que même de nouveaux administrateurs système puissent configurer de nouveaux serveurs Web pour configurer des pages dynamiques.

Pour ce faire, nous tirerons parti des récentes mises à jour des référentiels officiels de la distribution. Il est supposé que vous avez installé Debian 9 sur un métal nu, une machine virtuelle ou un VPS, ou que vous avez mis à niveau de Jessie.

Installation de Lemp dans Debian 9 Stretch

Vous vous demandez peut-être pourquoi nous avons mentionné Php-fpm au lieu de Php en tant que membre de Lemp empiler. Par opposition à d'autres serveurs Web, Nginx ne fournit pas le support natif pour Php.

Pour cette raison, Php-fpm (Gestionnaire de processus rapide) est utilisé pour répondre aux demandes de pages PHP. Vous pouvez en savoir plus sur PHP-FPM sur le site officiel PHP.

La version par défaut fournie dans les référentiels Debian php7.0-FPM. Comme vous pouvez probablement deviner en fonction du nom du package, cette version peut même traiter les demandes aux pages, y compris le code PHP 7.

NOTE: Si Apache a été installé dans la même boîte précédemment, assurez-vous qu'elle est arrêtée et désactivée avant de continuer.

Cela dit, installons les composants du Lemp Stack comme suit:

# Mise à jour de l'aptitude # aptitude installer nginx mariadb-server mariaDB-client php-mysqli php7.0-FPM 

Une fois l'installation terminée, assurez-vous d'abord que Nginx et Php-fpm sont en cours d'exécution et ont été activés pour démarrer sur le démarrage:

# Statut SystemCTL Nginx PHP7.0-FPM 

Si indique qu'un ou les deux services ne fonctionnent pas, alors faites.

# systemctl start nginx php7.0-fpm # SystemCTL Activer Nginx PHP7.0-FPM 

Comme c'est le cas avec chaque Mariadb ou Mysql installation, il est important de courir mysql_secure_installation Pour effectuer une configuration de sécurité minimale et définir le mot de passe du compte racine de la base de données.

# mysql_secure_installation 

Si vous ne savez pas comment faire cela, vous pouvez vous référer à étape 4 Dans How to Installer Mariadb 10 sur Debian et Ubuntu.

Configuration de Nginx pour utiliser PHP-FPM sur Debian 9

Le fichier de configuration principale de Nginx est / etc / nginx / sites-disponible / par défaut, où nous devrons apporter les modifications suivantes dans le bloc du serveur:

  • Assurer le emplacement Block qui gère les demandes PHP est activé, à l'exception de celui où le fastcgi_pass La directive pointe vers le Loopback Nic.
  • Ajouter indice.php après le indice Directive pour indiquer que si elle est trouvée, elle doit être servie par défaut avant indice.html ou d'autres fichiers.
  • Ajouter le nom du serveur Directive pointant vers l'adresse IP ou le nom d'hôte de votre serveur. Ce sera 192.168.0.35 dans notre cas.
  • De plus, assurez-vous que le racine La directive pointe vers l'emplacement où votre .php Les fichiers seront stockés (/ var / www / html par défaut).

Lorsque vous avez terminé, vous pouvez utiliser la commande suivante pour tester le fichier de configuration pour les erreurs.

# nginx -t 

À ce stade, votre / etc / nginx / sites-disponible / par défaut devrait ressembler à ce qui suit où les nombres se réfèrent à la configuration représente la liste ci-dessus:

# grep -ev '#' / etc / nginx / sites-disponible / par défaut 
Configurer nginx pour php-fpm

Tester Nginx et PHP-FPM sur Debian 9

Pour s'assurer que nous utilisons maintenant Nginx Comme notre serveur Web, créons un fichier nommé Info.php à l'intérieur / var / www / html avec le contenu suivant:

 

Ensuite aller à http: // 192.168.0.35 / info.php Et vérifiez le haut de la page où vous devriez voir ceci:

Tester nginx et php-fpm

Enfin, soulignons notre navigateur vers le Livres et autorités.php Fichier que nous avons créé dans Installer lampe (Linux, Apache, MariaDB ou MySQL et PHP) sur Debian 9.

Comme vous pouvez le voir dans l'image suivante, ce fichier est maintenant servi par Nginx:

Vérifiez les pages PHP desservies par Nginx

NOTE: Si vous remarquez que Nginx sert le .php Fichiers comme téléchargements au lieu de les exécuter, effacez votre cache de navigateur ou essayez un autre navigateur. En particulier, si vous utilisez Chrome, vous voudrez peut-être tester avec le mode incognito.

Résumé

Dans cet article, nous avons expliqué comment installer et configurer nginx pour servir dynamique .php pages. Il est important de noter qu'après cette configuration initiale, il existe des paramètres qui doivent être pris en compte pour sécuriser le serveur Web.

Vous pouvez trouver un résumé de base dans le guide ultime pour sécuriser, durcir et améliorer les performances du serveur Web Nginx.

Si vous recherchez un hébergement virtuel sur Nginx, lisez comment configurer des hôtes virtuels basés sur le nom et basés sur IP sur Nginx.

Comme toujours, n'hésitez pas à nous faire savoir si vous avez des questions ou des commentaires sur cet article.