permissions - wkhtmltopdf用户权限

标签 permissions wkhtmltopdf

我似乎无法让 wkhtmltopdf 在用户帐户上运行。

作为根用户:

wkhtmltopdf -V
wkhtmltopdf http://google.com google.pdf

以上两者都有效。但作为普通用户,我收到错误:

wkhtmltopdf -V
wkhtmltopdf: error while loading shared libraries: libQtWebKit.so.4: cannot open shared     object file: No such file or directory

显然,wkhtmltopdf 工作正常并且安装正确,因为它适用于 root 用户,但不适用于所有用户。

我尝试过设置权限:

[root@server ~]# chmod 755 /root/wkqt/
[root@server ~]# chmod 755 /root/wkqt/lib/
[root@server ~]# chmod 755 /root/wkhtmltopdf-qt/
[root@server ~]# chmod 755 /root/wkhtmltopdf-qt/lib/
[root@server ~]# chmod 644 /root/wkqt/lib/*so*
[root@server ~]# chmod 644 /root/wkhtmltopdf-qt/lib/*so*

我还尝试添加到visudo:

motorconne localhost=/bin/wkhtmltopdf
motorconne localhost=/root/wkhtmltopdf-qt/lib/libQtWebKit.so.4

但还是没有运气。有什么想法吗?

最佳答案

我遇到了完全相同的问题。

您可能按照 wkhtmltopdf wiki 上的安装步骤进行操作。

原来libQtWebKit.so.4位于/root/wkqt/lib/目录中。 这意味着您的用户必须有权进入该目录。

但是,当您输入 cd/root 时,您很可能会被拒绝访问 root 文件夹。

快速而肮脏的解决方案是向任何人授予对根文件夹的访问权限(是的,我说“快速而肮脏”)。例如:

sudo chmod a+rx /root

显然,这远非完美。在完美的情况下,您不会将 wkqt lib 安装在 root 目录中。相反,/opt/wkqt 会更合适。您可以通过在构建 wkhtmltopdf-qt 时更改 configure 命令行来实现此目的。例如:

./configure -nomake tools,examples,demos,docs,translations -opensource -prefix "/opt/wkqt"

希望这有帮助!

关于permissions - wkhtmltopdf用户权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11740101/

相关文章:

javascript - 如何在 Wkhtmltopdf/wkhtmltoimage 上运行自定义 Javascript?

html - 从没有按钮的 HTML 生成 PDF

python - 在 python 中通过 ftp 更改权限

mysql - 如何在错误的 chown 后恢复 mysql 权限

Java ProcessBuilder 不适用于 wkhtmltopdf

php - Wkhtmltopdf 不显示 TrueType 字体

docker - 如何通过 Docker 使用 wkhtmltopdf

linux - 我可以限制某个进程对某些文件的访问吗?

java - 如何在 Liferay 中为自定义角色的布局添加 VIEW 权限

linux - IDE如何使/var/www内容可编辑