php+nginx 报错502的心路历程

第一次

配置好Nginx之后,通过域名访问Nginx报错502,以为是配置问题,然后就开始各种搜索PHP+Nginx配置的文章,然后改来改去依旧没有什么效果。然后查看Nginx的日志发现没有错误日志,于是搁浅了,去忙别的事情,下次再说

第二次

这次呢,是发现自己是不是没有安装PHP环境,于是我就问了一个前辈,她跟我说安装一个56就行,然后我就去安装了56,启动然后接着去访问,发现依旧是502,然后自闭了

第三次

偶然的一个灵感,好吧其实是看配置文件(这个文件是网站的配置文件,我的路径是/www/server/panel/vhost/nginx/域名.config)发现有错误日志的路径,然后就赶忙去看日志,发现了一个错误connect() failed (111: Connection refused) while connecting to upstream 高兴坏了,然后就去各种百度,查了查,发现原因大致分为两点,一个是php-fpm没有运行,一个是php-fpm配置问题。
然后我直接跳过了第一个问题,其实主要原因是宝塔这边可以直接看到我启动了,因为有列表。所以我直接跳过,去查看php-fpm.conf配置文件,然后根据百度到的结果开始修改,发现依旧没有什么用,继续自闭中。

第四次

偶然执行命令行(/usr/local/bin/php-fpm 看个人路径)重启PHP56,然后报错ERROR: An another FPM instance seems to already listen on /tmp/php-cgi-56.so,看着错误信息,直接悟了,为了验证猜想,我又去执行了netstat -ant | grep 9000,发现没有信息,终于找到问题的症结所在了
第一步 去查看php-fpm.conf配置文件

[www]
listen = /tmp/php-cgi-56.sock   //这是重点,考试加粗的那种
listen.backlog = -1
listen.allowed_clients = 127.0.0.1
listen.owner = www
listen.group = www

第二步 修改网站的Nginx配置文件
此时我们需要根据配置文件的listen地址做对应的修改:

location ~*\.php$ {
       fastcgi_pass unix:/tmp/php-cgi-56.sock;    //把127.0.0.1:9000改为这个,重点啊
       fastcgi_index index.php;
       fastcgi_param SCRIPT_FILENAME     $document_root$fastcgi_script_name;
       include fastcgi_params;
}

然后访问,成功了,喜大普奔!!!!

结语

通过这几天的努力我一个Java后台,完全没接触过PHP的程序猿终于搞定了,兜兜转转发现问题又回到了一开始的局面,清楚的写下自己的心路历程,从发现问题到解决问题,经历的不甘,绝望,对自己能力的质疑,以及最后的希望,同时收获的也多,不是我会配置了,而是我依靠自己的能力发现问题,思考,解决问题,一个思路不对就换一个,殊途同归,即使多走了路程,也是多看了的风景,这同样也是宝贵的经验。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值