两种办法
一、调整nginx处理ph-fpm的时间
nginx.conf 里面主要是如下
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
php-fpm.conf 里如要是如下
request_terminate_timeout =10s
二、php使用fastcgi_finish_request()提前返回给客户端结束会话
此函数冲刷(flush)所有响应的数据给客户端并结束请求。 这使得客户端结束连接后,需要大量时间运行的任务能够继续运行。
返回值:成功时返回 TRUE, 或者在失败时返回 FALSE。
应用场景:如果一个方法耗时较长,可以先返回客户端或页面需要的数据,再进行后续的操作。
<?php
if (function_exists("fastcgi_finish_request")) { // yii或yaf默认不会立即输出,加上此句即可(前提是用的fpm)
fastcgi_finish_request(); // 响应完成, 立即返回到前端,关闭连接
}
ignore_user_abort(true);//在关闭连接后,继续运行php脚本
set_time_limit(0); //no time limit,不设置超时时间(根据实际情况使用)
/**************** 2 告诉前端结果,告诉浏览器完成,但继续运行php ****************/
/**************** 3 继续运行php ****************/
网友回复
有没有不依赖embedding向量的RAG技术?
有没有支持实时打断语音通话并后台帮你执行任何的ai模型?
开源ai大模型文件格式GGUF、MLX、Safetensors、 ONNX 有什么区别?
出海挣钱支付收款PayPal、Wise 、PingPong、Stripe如何选择?
如何实现类似google的图片隐形水印添加和识别技术?
linux上如何运行任意windows程序?
ai能写出比黑客还厉害的零日漏洞等攻击工具攻击任意软件系统工程?
js如何获取浏览器的音频上下文指纹、Canvas指纹、WebGL渲染特征?
为啥ai开始抛弃markdown文本,重新偏好html文本了?
网站有没有办法鉴别访问请求是由ai操控chrome-devtools-mcp发出的?


