Hello! 欢迎来到小浪资源网!


PHP+Nginx导出Excel超时怎么办?


PHP+Nginx导出Excel超时怎么办?

解决 php nginx 出现 504 超时

本地开发环境中使用 PHP Nginx 时,出现了 504 超时问题,需要解决。

环境信息:thinkphp 6、PHP 7.3、Nginx 1.15。

原因分析

立即学习PHP免费学习笔记(深入)”;

仔细观察发现,问题出现在 Nginx 的请求超时和加载超时上。

进一步分析后发现,问题出在后端导出 excel 的过程中。Excel 某列中有图片,这些图片需要通过 cURL 下载到本地。当导出日期范围较大(2 年/2800 条记录)时,由于图片下载时间较长,导致 Nginx 超时。

解决方案

放大 Nginx 配置中的 fastcgi_read_timeout 参数,将其值设为 180。

fastcgi_read_timeout 参数控制 Nginx 从 PHP-FPM 进程读取请求的超时时间。将此值设置为 180 表示 Nginx 将等待 180 秒才能超时,从而为图片下载留出更充裕的时间。

修改 Nginx 配置后,重新启动 Nginx 服务,问题即可解决。

相关阅读