cakephp render()在60秒后超时,并显示503 -服务暂时不可用

f5emj3cl  于 2022-11-11  发布在  PHP
关注(0)|答案(1)|浏览(168)

这段代码在CakePHP 4.3.3模板中超时,
503 -服务暂时不可用。
在一个非CakePHP脚本中,它可以工作[6分钟后显示DONE]。

ini_set("max_execution_time", "0");
sleep(360);
die("DONE");

模板的名称如下:

$this->render("/General/index", "Study");

我没有发现任何关于渲染的最大执行时间,但我可以清楚地将其减少到上述MCVE,它一定是一些CakePHP相关的,因为在CakePHP中,它在60秒后停止,在PHP文件timeout.php中,直接放置在webroot目录中,它工作。
我做错了什么,我没有正确设置什么?
我想,我应该把日志记录下来:
[proxy_fcgi:错误] [pid 1813:tid 140621247407872](70007)指定的超时已过期:【客户端XXXX:56968】AH 01075:将请求分派到以下对象时出错:
服务器在Apache/nginx下运行。

ybzsozfc

ybzsozfc1#

我不明白为什么同一个服务器和同一个域上的独立脚本可以正常工作,但是在CakePHP下,它遇到了超时-,有完全相同的3行代码
在调查了日志错误之后,解决方案是Apache 2 Timeout
此外,我必须设置nginx超时设置:

proxy_connect_timeout 3600s;
proxy_send_timeout 3600s;
proxy_read_timeout 3600s;
fastcgi_send_timeout 3600s;
fastcgi_read_timeout 3600s;

对Apache和nginx应用上述设置后,它也可以在CakePHP下工作。

相关问题