Maison >Opération et maintenance >Nginx >Que dois-je faire si nginx ne peut pas accéder à php ?

Que dois-je faire si nginx ne peut pas accéder à php ?

王林
王林original
2020-11-02 10:47:477926parcourir

Solution au problème selon lequel nginx ne peut pas accéder à php : 1. Utilisez un éditeur de texte pour ouvrir le fichier de configuration php-fpm.conf 2. Modifiez la configuration [listen = /tmp/php-cgi.sock] ; 3. Redémarrez nginx C'est tout.

Que dois-je faire si nginx ne peut pas accéder à php ?

Description du problème :

Un nouveau fichier index.php a été créé dans le répertoire racine de nginx, mais une erreur 502 était toujours signalée lorsque accéder au fichier php. Après des tests, il a été constaté qu'à l'exception des fichiers php, tout le reste est accessible directement.

(Tutoriel recommandé : Tutoriel nginx )

Solution :

Déterminez d'abord si php-fpm a été installé. S'il n'est pas installé, vous devez le faire. vous devez d'abord installer php-fpm.

Après avoir confirmé que php-fpm a été installé sur le serveur, vérifiez s'il a été démarré ou redémarrez-le directement

[root@localhost ~]# /usr/local/php/sbin/php-fpm start

Une fois le démarrage terminé, redémarrez nginx :

[root@localhost ~]# service nginx restart

Mais l'opération ci-dessus ne fonctionne pas. Résolvez les problèmes.

Recherchez le journal des erreurs nginx. Mon journal est dans : /var/log/nginx/error.log Ouvrez toutes les erreurs similaires :

2019/11/28 06:06:13 [error] 1640#0: *579 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.56.1, server: _, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.56.101"

Cela signifie probablement que 9000 ne peut pas être. connecté.

Vous devez maintenant vérifier s'il existe un port d'écoute 9000 :

[root@localhost ~]# netstat -ant | grep 9000 发现并没有监听(php-fpm已经启动)

Solution spécifique :

Ouvrir

vi /usr/local/php/etc/php-fpm.conf   #不知道安装在哪里的话 可以 find / -name php-fpm.conf 搜索一下

Trouver écouter

Que dois-je faire si nginx ne peut pas accéder à php ?

Nous allons copier le Listen = /tmp/php-cgi.sock sous [www] et le coller dans le fichier de configuration nginx

Que dois-je faire si nginx ne peut pas accéder à php ?

Notez que dans le passé, j'écrivais fastcgi_pass sous la forme 127.0.0.1:9000. Nous devons maintenant le changer en unix:/tmp/php-cgi.sock.

Enfin, redémarrez nginx.

Recommandations associées : formation php

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