Bon c'est une bonne chose !!
Comme Nginx ne contient pas de traitement PHP natif, contrairement à certains autres serveurs Web, nous devrons installer php-fpm , qui signifie "fastCGI process manager". Nous dirons à Nginx de transmettre les requêtes PHP à ce logiciel pour traitement.
Nos composants PHP sont maintenant installés, mais nous devons apporter une légère modification à la configuration pour rendre notre configuration plus sécurisée.
Ouvre le fichier de configuration principal php-fpm avec les privilèges root:
Ce que nous recherchons dans ce fichier est le paramètre qui définit cgi.fix_pathinfo . Ceci sera commenté avec un point-virgule (
et sera réglé sur "1" par défaut.
Il s'agit d'un paramètre extrêmement peu sécurisé car il indique à PHP d'essayer d'exécuter le fichier le plus proche qu'il peut trouver si le fichier PHP demandé est introuvable. Cela permettrait essentiellement aux utilisateurs de créer des requêtes PHP d'une manière qui leur permettrait d'exécuter des scripts qu'ils ne devraient pas être autorisés à exécuter.
Nous allons changer ces deux conditions en supprimant la mise en commentaire de la ligne et en la plaçant sur "0" comme ceci:
Enregistrez et fermez le fichier lorsque vous avez terminé.
Maintenant, il suffit de redémarrer notre processeur PHP en tapant:
Configurez Nginx pour utiliser le processeur PHP
Maintenant, nous avons tous les composants requis installés. Le seul changement de configuration dont nous avons encore besoin consiste à dire à Nginx d’utiliser notre processeur PHP pour le contenu dynamique.
Nous faisons cela au niveau du bloc serveur (les blocs serveur sont similaires aux hôtes virtuels Apache). Ouvrez le fichier de configuration de bloc de serveur Nginx par défaut en tapant:
Actuellement, avec les commentaires supprimés, le fichier de blocage du serveur par défaut de Nginx se présente comme suit:
Code : Tout sélectionner
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}
Nous devons apporter quelques modifications à ce fichier pour notre site.
- Premièrement, nous devons ajouter index.php tant que première valeur de notre directive index afin que les fichiers nommés index.php soient servis, s’ils sont disponibles, lorsqu’un répertoire est demandé.
- Nous pouvons modifier la directive server_name pour qu'elle pointe vers le nom de domaine ou l'adresse IP publique de notre serveur.
- Pour le traitement PHP proprement dit, il suffit de décommenter un segment du fichier qui traite les requêtes PHP en supprimant les symboles dièse (#) situés devant chaque ligne. Ce sera l' location ~\.php$ bloc d'emplacement, le fastcgi-php.conf inclus, et le socket associé à php-fpm .
- Nous allons également décommenter le bloc d’emplacement traitant des fichiers .htaccess en utilisant la même méthode. Nginx ne traite pas ces fichiers. Si l'un de ces fichiers se retrouvait dans la racine du document, il ne devrait pas être transmis aux visiteurs.
Les modifications que vous devez apporter figurent en rouge dans le texte ci-dessous:
Capture d’écran 2018-10-17 à 23.20.05.png
Lorsque vous avez apporté les modifications ci-dessus, vous pouvez enregistrer et fermer le fichier.
Testez votre fichier de configuration pour les erreurs de syntaxe en tapant:
Si des erreurs sont signalées, revenez en arrière et revérifiez votre fichier avant de continuer.
Lorsque vous êtes prêt, rechargez Nginx pour apporter les modifications nécessaires:
C'est fini on va maintenant créer un fichier pour tester :
Y écrire :
Sauvegarder et vous rendre sur localhost/info.php
J'ai fais un mini tuto lol
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.