You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在AWS App Runner中运行NReco时遭遇Internal Server Error 500问题

解决NReco在AWS App Runner生成PDF时的500错误
  • 检查系统依赖是否缺失:NReco依赖wkhtmltopdf运行,AWS App Runner的默认容器镜像通常没有预装其所需的系统库(如libglib2.0、libxrender1、libfontconfig1等)。本地环境自带这些依赖所以正常运行,容器中缺失会导致PDF生成失败。需在Dockerfile中添加安装命令:

    RUN apt-get update && apt-get install -y --no-install-recommends libglib2.0-0 libxrender1 libfontconfig1 libxext6
    
  • 验证文件读写权限:生成PDF过程中需要读写临时文件,App Runner的运行用户可能没有临时目录的写入权限。确保代码中使用的临时目录(如Path.GetTempPath())具备读写权限,或者自定义一个有权限的工作目录。

  • 检查HTML资源路径有效性:本地运行时HTML引用的CSS、图片等资源用的是本地路径,部署到App Runner后这些路径会失效。需将资源改为相对路径或可公开访问的URL,避免因资源加载失败中断PDF生成。

  • 开启详细日志定位问题:在代码中开启NReco的日志输出,将日志发送到App Runner的日志系统,通过具体错误堆栈排查问题:

    var pdfConverter = new HtmlToPdfConverter();
    pdfConverter.LogReceived += (sender, args) => Console.WriteLine($"NReco Log: {args.LogMessage}");
    

    日志会暴露具体失败原因,比如wkhtmltopdf执行报错、资源找不到等。

  • 调整App Runner实例资源配置:如果生成的PDF文件较大,App Runner默认的小内存实例可能因资源不足崩溃。尝试升级实例规格,选择内存更大的配置。

内容的提问来源于stack exchange,提问作者Danny Fernández

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 14:45:03