gpt4 book ai didi

php - Nginx PHP set_time_limit() 不工作

转载 作者:搜寻专家 更新时间:2023-10-31 21:08:08 24 4
gpt4 key购买 nike

我想增加 nginx 上一个 php 站点的超时,这样我就不会得到“504 网关超时”。我试过 set_time_limit 但它不起作用。我发现了一些基于修改配置文件的解决方案(例如 Prevent nginx 504 Gateway timeout using PHP set_time_limit() )。但是,就我而言,我不应该修改这些文件。有这样的方法吗?

感谢您的努力。

最佳答案

首先,您必须编辑 Nginx 配置文件以更改 fastcgi_read_timeout。没有办法解决这个问题,您必须更改该设置。

我不确定您为什么说“在我的情况下我不应该修改这些文件”。我认为您的原因可能是您想更改其中一个网站的超时时间,而不是其他网站。我发现实现该目标的最佳方法是继续并将 fastcgi_read_timeout 设置为非常长的超时(您希望您的任何站点的最长超时时间)。

但是您不会真的指望使用该超时,而是让 PHP 处理超时。编辑 PHP 的 php.ini 并将 max_execution_time 设置为您希望用于大多数网站的合理时间量(可能是 30 秒?)。

现在,要为特定网站或网页使用更长的超时时间,请在您希望允许运行更长时间的任何脚本的开头使用 PHP 中的 set_time_limit() 函数。这确实是在 Nginx/PHP-FPM 设置上对某些网站进行不同设置但对其他网站不进行设置的唯一简单方法。由于 PHP-FPM 与服务器上的多个网站共享 PHP 线程池的方式,其他更改超时的方法很难配置。

关于php - Nginx PHP set_time_limit() 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28810482/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com