总的来说,Nginx + php-fpm
的初始化配置还是比较简单的,如果没有配置好,在访问php
文件的时候会表现为将文件直接下载下来了,这时候其实就是php
脚本没能被正常解析。这时候排查的点主要有两个:
- 1、检查
php-fpm.conf
中的listen
,如果是listen = /tmp/php-cgi.sock
,那么对应的Nginx
中的fastcgi_pass
就需要设置为:fastcgi_pass unix:/tmp/php-cgi.sock;
,反之如果前者是listen = 127.0.0.1:9000
,那么后者就需要设置为:fastcgi_pass 127.0.0.1:9000;
- 2、要确保
Nginx
有与php-fpm
通讯的权限。一般的做法是设置Nginx
的运行用户为www
,即nginx.conf
中起始的地方user
那一行设置为:user www www;
。然后php-fpm.conf
中的设置也相对应的设置为www
,即:
listen.owner = www
listen.group = www
listen.mode = 0666