Odoo 10 找不到 wkhtmltopdf

Odoo 10 找不到 wkhtmltopdf

设想

我在 BSD jail 中运行 Odoo 版本 10。直到最近,所有功能都运行良好,我不知道有任何变化。我安装的 Odoo 已失去使用 wkhtmltopdf 生成 PDF 的功能。当我尝试打印报告时,收到以下信息:

Unable to find Wkhtmltopdf on this system. The report will be shown in html.

当我尝试通过电子邮件发送报告时,收到以下信息:

Unable to find Wkhtmltopdf on this system. The PDF can not be created. 

采取的措施

我登录到服务器来检查 wkhtltopdf 是否安装在同一个 BSD jail 中。

# pkg version -vR | grep wkhtmltopdf
wkhtmltopdf-0.12.3.2               =   up-to-date with remote

已更新。可能不在环境中。

# cd /usr/bin
# ls -l wkhtml*
ls: whktmltopdf: No such file or directory

它至少在本地环境中吗?

# cd /usr/local/bin
# ls -l wkhtml*
-rwxr-xr-x  2 root  wheel  49432004 Dec 12 07:41 wkhtmltoimage
-rwxr-xr-x  2 root  wheel  49536598 Dec 12 07:41 wkhtmltopdf

好的,所以也许它需要全局环境中的链接。

# cd /usr/bin
# ln -s /usr/local/bin/wkhtmltopdf wkhtmltopdf
# ln -s /usr/local/bin/wkhtmltoimage wkhtmtoimage

尝试打印并通过电子邮件发送报告,但仍然遇到同样的问题。

我也尝试看看 wkhtmltopdf 是否正常工作。

# wkhtmltopdf http://wkhtmltopdf.org testpdf.pdf

这成功生成了 PDF。

你能如何提供帮助

  1. Odoo 中的某些设置是否指向了错误的位置?
  2. 我可能忽略了一些故障排除步骤吗?
  3. 我怎样才能重新获得这一重要功能?

- 编辑 -

我验证了PATH监狱内 Odoo 应用程序的用户。

我在原帖中还看到我忘了提到我尝试过多次重启,包括简单的服务重启、越狱重启,甚至硬启动服务器机器本身。所有重启似乎都没有任何效果。我还确保在重试之前清除了浏览器缓存。

当我在编写一个无关的脚本来远程重启特定的 jail 时,我使用 Odoo jail 作为我的实验对象。在测试和微调这些脚本时,它一定经历了六次重启。看来这就是它所需要的。jail 需要停止和启动六次。

但是出现了一个新错误。它可以很好地找到 wkhtmltopdf,但找不到其他资源。进行了与 wkhtmltopdf 相同的所有检查,没有任何异常。运行了我的远程 jail 重启脚本,目前一切正常。

答案1

确保 /usr/local/bin 位于监狱内运行 Odoo 的用户的 PATH 中。

答案2

按照以下步骤操作

  1. https://downloads.wkhtmltopdf.org/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb
  2. dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb
  3. sudo cp /usr/local/bin/wkhtmltopdf /usr/bin
  4. sudo cp /usr/local/bin/wkhtmltoimage /usr/bin
  5. set system parameter in settings in odoo

    • key: webkit_path
    • value: /usr/bin/wkhtmltopdf

相关内容