在Mac配置nginx ,php,php-fpm环境时遇到的问题。
1.nginx和php-fpm正常启动
sudo nginx
sudo php-fpm
启动正常,浏览器:localhost:8080正常
但所要启动的项目依然启动失败,可能有一下几个原因:
a:nginx 未找到php-fpm可检查nginx.conf文件下此服务的配置信息
fastcgi_pass 对应的IP端口是否php-fpm对应的端口一样(将前面的注释符号去掉)
可在终端查找php-fpm.conf文件
find ./ -name "php-fpm.conf"
如图:php-fpm有5.6,7.1等不同版本
进入php-fpm.conf文件查看
sudo vim /usr/local/etc/php/5.6/php-fpm.conf
i 编辑
esc 退出编辑
: w filename (输入 「w filename」将文章以指定的文件名filename保存)
: wq (输入「wq」,存盘并退出vi)
: q! (输入q!, 不存盘强制退出vi)
:wq! 强退出
mac终端下修改文件看百度查询
进入文件后,在英文模式下操作,否则部分操作命令无效,
用 /9000 查找端口
/端口 回车查找端口
如果此端口号一至说明此服务下使用的是此版本下的php-fpm,(端口号默认为9000),
如果不一致则继续查找
或者想使用此版本,将此php-fpm的端口修改与nginx.conf文件端口一样即可,在重启 nginx和php-fpm,看项目是否启动成功。
不同PHP版本,有些端口好的配置可能在php-fpm文件下查找不到,此时还需要去其他文件查看,一般php-fpm.conf文件下会有相关的文件信息,可继续找到下一个文件查找,php7.1的版本可能存在这种情况。
b:如果php-fpm的配置没有问题,项目依然启动失败,可能是启动的php-fpm不是此文件也不想继续查找其他的php-fpm文件的话。
可直接指定 对应的php-fpm 文件路径启动php-fpm
php-fpm --fpm-config=文件路径
例如:
php-fpm --fpm-config=/private/etc/php-fpm.conf
说明此端口已经被占用了,要修改端口才能启用,正确的效果如下图:
c:在thinkphp3的版本下项目 启动失败
如果排除以上2个问题,项目依然启动失败,提示session相关的信息,可能是php.ini配置文件是否注释了session 等信息,可检查系统时区问题可能项目时期与系统服务时区不一致,具体解决办法可百度查询此类似的信息。
时区
session
session.save_path = /tmp
更多session的相关信息可参看一下链接:
https://zhidao.baidu.com/question/1447128076487301380.html
其他:http://localhost:端口号/i.php 在浏览器的端口号后面加/i.php,可查此php版本等信息
如果没有找到,这个说明此项目下没有i.php文件,可新建一个i.php文件,文件内容如下
phpinfo();