在搭建Lnmp环境的时候可能会遇到这么一个问题,发现nginx安装好之后只能解析html文件的代码,却不能解析php文件的代码,这个时候可能出现的情况有两种,第一种是看php、php-fpm是否有装完成和是否启动;第二种情况就是下面的方案,跟系统的关系,nginx的配置有所不同。在nginx中配置重写规则中,有这么一句话:
1 | fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock |
可是在centos7.2中,这个路径没有这个文件,只有一个php-fpm.pid文件,那么上面这个文件在哪里?
1 | [root@izwz9a3uv2157di5ogaaytz sites-enabled]# cd /var/run/php-fpm/ |
用find / -name “php.sock”找一下sock文件的位置,如果没找到的话就是没配置Unix Socket,只能访问TCP端口,可以为改为fastcgi_pass 127.0.0.1:9000
正确的配置:
1 | location ~ \.php$ { |
CentOS7yum安装PHP7.2
1 | yum -y remove php* //如果之前已经安装我们先卸载一下 |