【问题标题】:Why my node js express app not keep alive?为什么我的 node js express 应用程序不能保持活动状态?
【发布时间】:2019-05-13 07:12:54
【问题描述】:

我有一个 node 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);

【问题讨论】:

  • 您是否检查了服务器上允许的最大大小?
  • 嗨@LuisEstevez,我该如何检查?我对服务器了解不多。
  • 嗯...这是从 youtube request(inputUrl) 下载文件吗?
  • @LuisEstevez 是的,inputUrl 是 youtube 视频的源 url。
  • 已解决:根本原因是在Litespeed Webserver的配置文件httpd_config.xml中有这样的配置:10M,传输10MB后响应停止,我修改了到 1000M,问题就消失了。

标签: node.js express keep-alive


【解决方案1】:

根本原因是在Litespeed Webserver的配置文件httpd_config.xml中有这样的配置:maxDynRespSize 10M,传输10MB后响应停止,我修改为1000M,问题消失了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-01
    • 2013-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-19
    • 2012-03-09
    相关资源
    最近更新 更多