要让Nginx支持PHP-FPM处理OpenAI API的流式输出(如SSE或流式响应),需调整配置确保数据实时传输,避免缓冲阻塞。关键设置如下:
禁用Nginx缓冲:在PHP处理的location块中,关闭响应缓冲和压缩,确保数据即时发送:
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
# 禁用缓冲
fastcgi_buffering off;
proxy_buffering off;
gzip off;
} PHP端配置:确保PHP脚本不缓冲输出,设置正确的响应头:
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
header('X-Accel-Buffering: no'); // 关键:告知Nginx不缓冲
// 禁用PHP输出缓冲
ob_implicit_flush(true);
ob_end_flush(); 处理连接超时:若流持续时间长,需延长超时设置:
fastcgi_read_timeout 300s; # 调整为合适时长 proxy_read_timeout 300s;
这些设置确保Nginx和PHP-FPM不缓存流式数据,实现OpenAI API响应的实时输出。
网友回复
如何破解绕开seedance2.0真人照片生成视频 限制?
python有哪些算法可以将视频中的每个帧图片去除指定区域水印合成新的视频?
iphone的激光雷达数据能否实时传输到three三维空间中?
豆包sora等ai视频生成大模型生成的视频水印如何去除?
python如何实现在电脑上拨号打电话给手机?
具身机器人与人形机器人区别?
nodejs如何将一个完整的js代码文件切割成不同的部分混淆后动态加载进入html运行?
为啥windows.onerror捕获js错误是这样的{"message":"Script error.","source":"","lineno":0,"colno":0,"stack":null,
2026年ai将全面接管编程?
WebMCP是干啥的?


