我有一个节点js应用程序使用express从youtube获取视频并响应客户端,我使用Litespeed服务器,我的服务器启用了'keep-alive
',当我从localhost运行我的代码时,它工作得很好,响应在其标题中包含'Connection: Keep-Alive'
,并下载了整个文件。
但是当我部署到服务器时,响应在其标头中不包含"Connection: Keep-Alive'
,并且下载 10MB 后总是停止。这让我陷入困境并为此感到难过,所以任何人都可以给我一些解决方案?
这是我获取文件和响应客户端的代码:
res.writeHead(200, {"Connection": "keep-alive","Content-Type": "video/mp4", "Content-disposition": "attachment; filename=abc.mp4"});
request(inputUrl).pipe(res);
根本原因是在配置文件中 httpd_config.xml Litespeed Web服务器具有以下配置:maxDynRespSize 10M,它在传输10MB后做出停止响应,我将其修改为1000M,问题消失了。