【发布时间】:2019-08-03 03:47:45
【问题描述】:
即使我的 php.ini 中的 max_execution_time 和 max_input_time 设置设置为 180,我仍然收到 PHP“最大执行时间超过 60 秒”错误。我还尝试让我的脚本使用 set_time_limit(0); 和 @987654323 @ 这没有帮助。我确保使用了正确的 php.ini 文件,检查了phpinfo() 输出,所有设置值都是我所期望的。抛出错误的代码行是调用 curl_exec(),所以我也尝试添加 curl_setopt($ch, CURLOPT_TIMEOUT, 180); 并且没有运气,仍然得到相同的 60 秒超时错误。没有什么其他超时设置可能导致这种情况的想法。环境是 Windows,PHP 作为 FastCGI 模块运行。
【问题讨论】:
-
可能是一个基本问题,但是您是否记得在更改 php.ini 文件后重新启动您的网络服务器?
-
更改 ini 后,我希望您已重新启动服务器...如果没有,请重新启动 n 检查。编写 set_time_limit(0) 一定有效。
-
我做到了。正如我所说,甚至检查 phpinfo() 以确保反映了这些值,并且它们并非没有重新启动 Web 服务器。
-
它至少在 CLI 版本中有效吗?也改变了 fpm.ini? Apache 模块(例如 mod_reqtimeout)? FastCGI -*timeout 设置?
ini_get("max_…在运行时产生什么?尝试使用.user.ini覆盖? -
@mario 感谢您让我走上正轨。我在调用失败的地方准确地运行了 ini_get(),它没有产生我期望的值。我搜索了一下,发现其他地方有一段代码覆盖了它。问题解决了。再次感谢。如果您想在调用失败的情况下执行 ini_get() 并搜索 ini_set() 或 set_time_limit() 的其他实例,我会将其标记为正确答案。
标签: php