Debian 上 PHP 超时的定位与解决
一、先快速定位超时来源
二、按运行模式调整配置
三、常见场景与推荐配置
| 场景 | 需要调整的指令 | 建议值/做法 |
|---|---|---|
| 普通 Web 接口 | max_execution_time;Nginx fastcgi_read_timeout | 接口应在 1–2 分钟内完成;必要时将两者调至 120–300s |
| 大文件导入/导出、耗时任务 | max_execution_time;request_terminate_timeout;fastcgi_read_timeout | 建议 300–600s;更优方案是改为异步任务 |
| 后台计划任务 | CLI 无需设置;如需限制可用 set_time_limit | 直接 CLI 执行,避免 Web 超时 |
| 实时流式或大响应 | max_execution_time;request_terminate_timeout | 适当增大;若仍受限,考虑分块输出或异步处理 |
四、稳妥的长期方案与最佳实践
五、安全与风险提示