nginx +php-fpm 中的 504 错误:发布请求

nginx +php-fpm 中的 504 错误:发布请求

我有一个带有 nginx 和 php-fpm 的测试服务器。

网站上的页面可以正常打开,但当我想发送 POST 请求(例如“网站授权”)时,我收到“504 网关超时错误”。Nginx 和 php-fpm 使用默认设置配置。

504 的原因可能是什么?

答案1

这似乎是一个非常常见的问题,正如 StackOverflow 过去所显示的那样:

无论如何,对于您的具体问题,我认为答案在于 PHP-FPM 配置。也许您应该检查您的 php-fpm.conf(如果您有 PHP5-FPM,则应检查/etc/php5/fpm/pool.d/www.conf/etc/php5/fpm/php-fpm.conf)并设置此参数:

request_terminate_timeout = 30s

如果事情不起作用,将其改为更低或更高的值也可能有用。

答案2

如果在执行 fastcgi 传递时 nginx 超时,您也可以在 nginx 端处理此问题,方法是在 fastcgi_pass 的节中使用以下指令:

fastcgi_connect_timeout 60;
fastcgi_read_timeout 60;

这些会将连接和响应超时设置为 60 秒,之后 nginx 就会给你 504。

相关内容