2016-11-24 147 views
0

所以,我試圖從HTML獲取PDF與圖書館和symfony的日誌中我得到這樣的錯誤信息:Symfony的KnpSnappyBundle和wkhtmltopdf不想生成PDF

[2016年11月24日15:46:41] request.CRITICAL:未捕獲的PHP異常 Symfony \ Component \ Process \ Exception \ RuntimeException:「進程已使用信號」6「發送 。在 /www/api/vendor/symfony/symfony/src/Symfony/Component/Process/Process.php line 371 {「exception」:「[object] (Symfony \ Component \ Process \ Exception \ RuntimeException(code: 0): 該過程已經用信號「6」發送信號,在 /www/api/vendor/symfony/symfony/src/Symfony/Component/Process/Process.php:371)「} []

臨時html生成良好(我調試它並捕獲tmp文件)。當我試圖執行命令直接從外殼是這樣的:

sudo -u nginx wkhtmltopdf knp_snappy58370b110cc230.00971305.html test.pdf

我得到一個錯誤信息:

沒有協議規定

QXcbConnection:無法連接到顯示:0

Aborted

knp_snappy配置:

knp_snappy: 
    pdf: 
     enabled: true 
     binary:  /bin/wkhtmltopdf 
     options: 
      load-error-handling: ignore 
      no-stop-slow-scripts: ~ 
      enable-javascript: ~ 
      use-xserver: ~ 
      page-size: A4 
      dpi: 300 
      javascript-delay: 5200 
    image: 
     enabled: true 
     binary:  /bin/wkhtmltoimage 
     options: [] 

你能不能指點我在做什麼錯?如果有意義,我使用Fedora 25。

+0

你能提供你的config.yml嗎? – OlivierC

+0

@OlivierC添加到問題 –

+0

是的位置是正確的,@OlivierC –

回答

0

所有你需要安裝以下依賴關係wkhtmltopdf

  • 的OpenSSL首先
  • 建立必要的
  • 的xorg
  • 的libssl-dev的

它不會抱怨缺少依賴關係,你會認爲安裝正常,但不是真的。我也陷入了這個陷阱。

然後當然要確保wkhtmltopdf二進制文件位於您想要使用它的位置。

+0

此外[本文](http://stackoverflow.com/a/22575670/7169909)可能會帶來解決方案 – OlivierC

+0

所有庫都安裝。當我正在試圖從我自己的shell中構建它時 - 我獲得了成功,但是與symfony - 沒有關係 –