我一直在尝试解决Nginx遇到502错误网关的问题。
最困难的部分是日志对于此几乎毫无用处。
我正在使用VueJS,因此请求/响应更多是REST体系结构。
它当前正在做的只是尝试返回公司信息,但出现网关错误。问题是,这是完全随机的。
(注意:由于502错误的网关,发生了CORS错误)
它只会在某些时候发生,但并非总是如此。当我通过名为Restlet Client的Chrome扩展程序发出请求时,效果很好。
正在查看Nginx错误,它是对等重置连接:
2019/01/13 14:40:07 [错误] 5467#5467:* 537 recv()失败(104:对等连接重置),同时从上游读取响应头,客户端:192.168.252.1,服务器:_ ,请求:“ GET / v1 / company / index / HTTP / 1.1”,上游:“ fastcgi:// unix:/run/php/php7.2-fpm.sock:”,主机:“ whitty.vm:130” ,引荐来源网址:“ http://whitty.vm:8080/company”
出现的PHP FPM错误是:
[2019年1月13日14:40:07]警告:[pool www]儿童6063从启动开始9328.151921秒后在信号11(SIGSEGV)上退出 [13-Jan-2019 14:40:07]注意:[Pool www]儿童6410开始
有人知道为什么会发生这种情况吗?您是否需要更多信息?
答案 0 :(得分:0)
因此502 Nginx错误可能很难诊断。经过网络上无数的研究,我得出的结论是,每个502错误网关都可能由各种问题引起。
在我的情况下,我使用RedbeansPHP,即DB Layer。用户登录时,我将其信息存储到$ _SESSION中。但是,与其选择我只应存储在会话中的信息,不如将RedbeansPHP对象存储在会话中。
将其更改为数组然后存储后,我不再遇到问题。