微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是什么导致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

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

原文地址:https://www.jb51.cc/nginx/435428.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐