流星 EPIPE 错误中的 html-pdf

Posted

技术标签:

【中文标题】流星 EPIPE 错误中的 html-pdf【英文标题】:html-pdf in meteor EPIPE error 【发布时间】:2015-05-28 12:42:07 【问题描述】:

我有一个使用 html-pdf 呈现 PDF 服务器端的 Meteor 应用程序。该应用程序使用mup 部署。在本地,一切正常。部署后,我在服务器日志中看到此错误:

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: write EPIPE
    at errnoException (net.js:905:11)
    at Object.afterWrite (net.js:721:19)
error: Forever detected script exited with code: 8
error: Script restart attempt #1

东西的版本:

Ubuntu 14.04.2 LTS 流星 1.0.4.2 Node.js 0.10.37 mup 0.9.7

【问题讨论】:

【参考方案1】:

总结

修复:sudo apt-get install libfontconfig

详情

我注意到html-pdf 依赖并安装phantomjs 本身。我发现了几个编译后的phantomjs 二进制文件:

/opt/testapp/app/programs/server/npm/testpackage/node_modules/html-pdf/node_modules/phantomjs/bin/phantomjs
/opt/testapp/app/programs/server/npm/testpackage/node_modules/html-pdf/node_modules/phantomjs/lib/phantom/bin/phantomjs

当我尝试直接运行任一二进制文件时,出现以下错误:

error while loading shared libraries: libfontconfig.so.1: cannot open shared object file: No such file or directory

网络搜索出现了这个secret dependency。

【讨论】:

非常感谢!拯救了我的一天。【参考方案2】:

Ubuntu v18.04.5 也会出现这个问题

安装以下命令后,它对我来说工作正常。

sudo apt-get install libfontconfig

【讨论】:

以上是关于流星 EPIPE 错误中的 html-pdf的主要内容,如果未能解决你的问题,请参考以下文章

将 html-pdf 与动态数据一起使用

Android 错误:写入失败:EPIPE (Broken pipe)

Node.js - 我不断收到以下错误:错误:ffmpeg 流:写入 EPIPE

NodeJS - 错误:在 SOCKS5 代理上写入 EPIPE

使用 node-pdftk 填写表单时写入 EPIPE 错误

全局助手正在覆盖流星车把模板中的本地上下文