Home  >  Article  >  Backend Development  >  What should I do if nginx cannot run php files?

What should I do if nginx cannot run php files?

藏色散人
藏色散人Original
2021-06-26 09:34:324085browse

The solution to the problem that nginx cannot run php files: first find "php-fpm.conf" and configure the "listen" item; then change the corresponding configuration in nginx.

What should I do if nginx cannot run php files?

The operating environment of this article: linux5.9.8 system, PHP7.1 version, DELL G3 computer

Why can’t nginx run php files? What to do? Improper configuration of nginx php-fpm caused the php file to fail to execute.

I haven’t been to my website for a long time. Today I went to see it and found a 50x error.

The website is served by nginx.

Many situations on the Internet are caused by problems with the

location ~ .php$ {
# root html;
#fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

part of the nginx configuration. The problems found in keyword searches are mostly explanations of the incorrect configuration of the

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

part.

But my configuration is correct.

I am running normally on the server

service php-fpm status

.

php ./index.php

can also be executed normally.

The problem is locked in

fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;

That is to say, nginx cannot find php-fpm to execute the .php script.

So where is php-fpm.sock?

It depends on the settings in php-fpm.conf.

I changed the keyword search on the Internet and finally found some useful information

The setting of fastcgi_pass is determined according to the listen setting in php-fpm.conf.

Okay, the next question is to find php-fpm.conf and configure the listen item

Some servers do not directly provide settings in php-fpm.conf.

But there is such a sentence

include=/etc/php-fpm.d/*.conf

Then we go to the corresponding php-fpm.d directory to find conf

Mine is www.conf

Finally found the

listen = /var/run/php-fpm/php-fpm.sock

inside and then went to nginx and changed the corresponding configuration.

fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;

There are many

fastcgi_pass unix:/var/run/php-fpm.sock;

on the Internet. This depends on the php-fpm.sock settings in your php-fpm.conf.

Record the questions. Don’t panic when you encounter problems. Think more and search more. You can find many wonderful things.

Searching requires thinking. If you blindly go into dead ends, you will never find the answer, and your ability to analyze problems will not be improved.

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of What should I do if nginx cannot run php files?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn