0

我被困在一个被难住的问题上。我已经按照自述文件中的说明安装了CakePdf 插件。但是,当我开始使用该插件时,我收到一个 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

4

1 回答 1

2

文档中似乎有错误。

当您调用wkhtmltopdfbootstrap.php 文件时,而不是使用:

'engine' => 'WkHtmlToPdf'

你需要使用:

'engine' => 'CakePdf.WkHtmlToPdf'

反而。

这可以解决问题。

于 2012-08-27T09:16:22.030 回答