由 PHP7 和 Nginx 配置导致的 502 错误解决办法

最近有点懒,中午过了一点半还没有做饭吃,所以接下来捯饬的事情肯定不是吃饱了撑。

WordPress 最近发布了 5.2 的版本,对 PHP 的最低要求是 5.6.20,我的是 5.6.18,毕竟是 2016 年安装的 PHP 了,所以我想更新到 PHP7,据说 PHP7 更快。我们从 php 上又一次看到了时间流逝的痕迹,这也意味着我的网站已经运行 3 年了。

我的网站环境是使用 oneinstack 配置的,所以我找到一条官方更新 oneinstack 的命令:

wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz
tar xzf oneinstack-full.tar.gz

为什么要执行上面的语句呢?因为更新最新的 oneinstack 里面包含了最新 php 的安装包,如果自己去 php.net 下载,因为网络的原因压根不会成功。所以更新最新的 oneinstack 是十分有必要的。

为了保持文件比较有条理,上面的命令最好在用户的根目录下执行。

更新到 PHP7 后我的网站就开始报 502 的错误了。啥是 502 呢?我特意去翻阅了《HTTP 权威指南》。

502 Bad Gateway 作为代理或网关使用的服务器从请求响应链的下一条链路上收到了一条伪响应(比如,它无法连接到其网关)时,使用此状态码

意思反正我也没有看懂,直觉告诉我应该是 PHP7 的配置问题,直到搜索到了这个答案,具体可以查看参考链接。

里面涉及协议层的知识,我也不懂,我就不转述了,以后我懂了再来写吧,我先去拿瑞幸咖啡(我没有收广告费)了。就上面这样一个过程,一下午就过去了。

上面的内容是 2019-05-11 写的。

以下内容在 2021-02-17 日更新

今天是正月初六,明天就要去深圳打工,本来这个晚上不应该写代码的,陪家人看电视不好吗,偏偏要更新 php 版本,导致这个年假以来最晚睡的就是今天了。

历史总是惊人的相似,而我似乎远没有接受到教训。深刻体会到,文档写的模棱两可,最后害的人是自己。

php 的版本由之前的 7.0.33 升级到了 7.3.5

参考链接

您好,如何升级PHP版本从7.0.8到 7.2或更高?

解决PHP7无法监听9000端口问题/502错误解决办法

php-fpm 启动后没有监听端口9000

php 502 bad gateway 解决方法

我要分享

作者: 曾小乱

喜欢写点有意思的东西

《由 PHP7 和 Nginx 配置导致的 502 错误解决办法》有一个想法

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据