Maison  >  Article  >  développement back-end  >  Nginx + PHP-fpm Fichier introuvable.

Nginx + PHP-fpm Fichier introuvable.

不言
不言original
2018-04-23 17:22:5010504parcourir

Le contenu de cet article concerne le fichier Nginx + PHP-fpm introuvable. L'enregistrement de résolution de problèmes a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Confirmation des phénomènes :

Ouvrez les outils de développement du navigateur et affichez les informations de la demande

<br>

HTTP/1.1 404 introuvable

Serveur : nginx/1.11 .10

Date : vendredi, 20 avril 2018 08:10:13 GMT

Type de contenu : text/html; charset=UTF -8

Transfer-Encoding : chunked

Connexion : keep-alive

X-Powered-By : PHP/5.6.30

Explication selon laquelle le résultat est renvoyé par FastCGI.

<br>

Cause du problème :

<br>

C'est probablement lié aux autorisations

<br>

La même configuration, utilisez les deux suivants :

/opt/local/share/nginx/html  
/opt/local/share/nginx/html/php

Les deux répertoires sont OK, mais utilisez :

/Users/xxx/Downloads/workForder

Les répertoires ne le peuvent pas.

Vérifiez les autorisations via ls -l et constatez que la différence est que les fichiers du répertoire

<br>

/Users/xxx/Downloads/workForder

n'ont pas d'attributs étendus, cela c'est-à-dire qu'il n'y a pas de symbole @.

<br>

Plus tard, le répertoire racine des fichiers statiques de Nginx a été modifié en :

<br>

/Users/xxx/Downloads/workForder

L'accès apparaît :

Erreur 403 interdite

Regardez nginx 403 et trouvez la cause du problème. Vous devez modifier l'utilisateur et le groupe dans le fichier de configuration.

le format nginx est : <br>

user 你的用户名/root owner;
比如:
user root owner;

Modifiez respectivement PHP-fpm : <br>

user = root
group = owner

puis redémarrez.

PHP-fpm lui-même n'a pas de commande de redémarrage, ce qui est assez déroutant ! Le seul moyen est de tuer le processus. <br>

Fichier de configuration :

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #

        location ~ \.php$ {
            root           /Users/xxx/Downloads/workForder;
           # root           /opt/local/share/nginx/html/php;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include        fastcgi.conf;

         }

Seules les parties liées à PHP sont affichées ici. Lorsque j'ajoute

<br>
try_files $uri =404;
 后,就会看到由Nginx返回的:

<br>

<br>

pour accéder au fichier PHP, vous pouvez voir ce qui suit erreur :

<br>

C'est parce que FastCGI n'a pas été démarré et doit être démarré :

sudo php-fpm  -D

Et si Nginx et PHP S'ils sont tous pointez sur le même répertoire, vous verrez toujours :

Fichier introuvable

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn