【问题标题】:CakePHP can't find 'wkhtmltopdf' when using CakePdf plugin使用 CakePdf 插件时,CakePHP 找不到“wkhtmltopdf”
【发布时间】:2012-08-21 16:50:36
【问题描述】:

我遇到了一个被难住的问题。我已经按照自述文件中的说明安装了CakePdf plugin。然而,当我开始使用该插件时,我收到一个 CakePHP 错误,内容如下:

找不到 PDF 引擎“wkhtmltopdf”

错误:发生内部错误。堆栈跟踪

APP/Plugin/CakePdf/Pdf/CakePdf.php line 193 → CakePdf->engine(string)
APP/Plugin/CakePdf/View/PdfView.php line 74 → CakePdf->__construct(array)
APP/Plugin/CakePdf/View/PdfView.php line 64 → PdfView->renderer(array)
CORE/Cake/Controller/Controller.php line 942 → PdfView->__construct(UsersController)
CORE/Cake/Routing/Dispatcher.php line 193 → Controller->render()
CORE/Cake/Routing/Dispatcher.php line 161 → Dispatcher->_invoke(UsersController, CakeRequest, CakeResponse)
APP/webroot/index.php line 96 → Dispatcher->dispatch(CakeRequest, CakeResponse)

我检查了 CakePdf 使用的二进制路径,代码如下:

protected $binary = '/usr/bin/wkhtmltopdf';

我已经导航到 /usr/bin/ 目录,并且 wkhtmltopdf 二进制文件就在那里。我还使用了命令wkhtmltopdf http://bbc.co.uk bbc.pdf,它可以工作。所以不知道为什么 CakePHP/CakePdf 找不到插件,即使它位于定义的二进制路径中?

更新
这是wkhtmltopdf 二进制文件的权限等:

-rwxrwxrwx。 1 根 8301444 8 月 27 日 08:14 wkhtmltopdf

【问题讨论】:

    标签: cakephp wkhtmltopdf


    【解决方案1】:

    文档中似乎有错误。

    当您在 bootstrap.php 文件中调用 wkhtmltopdf 时,而不是使用:

    'engine' => 'WkHtmlToPdf'
    

    你需要使用:

    'engine' => 'CakePdf.WkHtmlToPdf'
    

    改为。

    这会解决问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多