是什么导致nginx服务器上的此错误 – 502错误的网关

我在Nginx服务器上有一个在Drupal 7中构建的站点.每周几次编辑任何内容并按保存,或者当我登录网站时,或者当我更改某些配置时,我会看到一个带有“502 Bad gateway”消息的白色屏幕.只有在登录并保存更改时,才会向匿名访问者显示错误.我做什么样的改变似乎并不重要.我可以按浏览器中的后退按钮,这会将我带回编辑屏幕并再次按保存,然后成功保存更改.

错误发生在今天早上08:09,所以我查看了PHP日志:

2016/10/20 08:09:00 [error] 20703#20703: *3297348 recv() Failed (104: Connection reset by peer) while reading response header from upstream,client: 195.198.76.66,server: www.example.com,request: "POST /node/88/edit HTTP/1.1",upstream: "fastcgi://unix:/run/PHP/PHP-fpm.sock:",host: "www.example.com",referrer: "http://www.example.com/node/88/edit"

这是同一时间的Nginx日志:

[20-Oct-2016 08:09:00] WARNING: [pool www0] child 10909,script '/srv/www/example/public_html/index.PHP' (request: "POST /index.PHP") execution timed out (8189.954999 sec),terminating
[20-Oct-2016 08:09:00] WARNING: [pool www0] child 10909 exited on signal 15 (SIGTERM) after 19080.476683 seconds from start
[20-Oct-2016 08:09:00] NOTICE: [pool www0] child 13002 started

谁能看到这里发生了什么?

最佳答案
我在使用Nginx& amp;的设置上遇到了HTTP 502问题. PHP-FPM.似乎很多超时&必须根据数据传输时间修改限制.在这种情况下发生的事情是keepalive超时太短.

以下是一些可能有助于解决502问题的设置:

>在Nginx.conf中:keepalive_timeout
>在站点配置文件中(位于可用站点文件夹中):

> send_timeout
> fastcgi_connect_timeout
> fastcgi_send_timeout
> fastcgi_read_timeout

>在PHP.ini中:

> max_execution_time
> max_input_time

问题的真正根源可能是这些设置中的任何一个.

相关文章

Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一...
本地项目配置 1 复制 luffy/settings/dev.py为prop.py 修改l...
nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看...
一 、此次漏洞分析 1 nginx HTTP/2漏洞 [nginx-announce] ng...
###进入nginx 目录cd /usr/local/nginx###递归显示 2 级目录...
在cmd命令窗口输入下面命令进行查看 tasklist /fi "ima...