1

我试图在我的网站上使用 wkhtmltoimage 但在这里不起作用是我的测试网站代码

<?php
$output = shell_exec('/usr/local/bin/wkhtmltoimage --quality 95 --width 1024 --height 0     yahoo.com test1.jpg');
echo "<pre>$output</pre>";
?>

输出只是一个空白页。有趣的是当我运行shell_exec(ls -l); 而不是 shell_exec('/usr/local/bin/wkhtmltoimage --quality 95 --width 1024 --height 0 yahoo.com test1.jpg');,它工作正常,当我wkhtmltoimage --quality 95 --width 1024 --height 0 yahoo.com test1.jpg从我的 ssh 终端运行时,它给了我

Loading page (1/2)
Rendering (2/2)
QPixmap: Cannot create a QPixmap when no GUI is being used   ] 25%
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
Done

但它会继续创建 jpg 文件。
当我为 yahoo.com 尝试相同的命令时,这就是我得到的 catarplc@zenbile.com [~/public_html]# wkhtmltoimage --quality 95 --width 1024 --height 0 yahoo.com test100.jpg

Loading page (1/2)
Error: Failed loading page http://yahoo.com (sometimes it will work just to ignore this error with --load-error-handling ignore)
Error: Failed loading page http://yahoo.com (sometimes it will work just to ignore this error with --load-error-handling ignore)

不同的网站给了我不同的信息。有人知道发生了什么吗?我雇来做我网站的人说这是服务器问题,不想做任何其他事情,我的网络托管公司一直告诉我 shell_exec() 工作正常并且 wkhtmltoimage 安装正确....我需要双方的帮助我付钱来帮助我并没有帮助我。有人可以帮忙吗???

谢谢

4

4 回答 4

2

据我所知,这是因为在“robots.txt”文件中禁用了权限。您的代码和库中没有问题。

它仅适用于 robots.txt 中包含允许权限的网站

您不会获得 yahoo.com、imdb.com 等的缩略图,但您可以获得 google.com、hotmail.com 等的缩略图

于 2011-12-09T11:00:59.677 回答
1

如果您给出了以下条件,则当您的路径HTML错误时会发生这种情况:

<a href="http"//wwww.google.com">google.com</a> 

似乎脚本变得混乱了;检查HTML路径。

于 2012-10-13T18:56:59.437 回答
1

发生这种情况是因为 wkhtmltoimage 需要 X 服务器实例来转换包含图像的网页。

长话短说,如果您正在运行 X 服务器,只需添加 --use-xserver 参数。

如果不这样做,则需要使用 xvfb 将命令包装在虚拟 X 服务器实例中。

sudo apt-get install xvfb
xvfb-run --server-args="-screen 0, 1280x1024x24" wkhtmltoimage --use-xserver http://yahoo.com test.pdf

更详细的解释请看:http ://blog.hugerepo.com/2013/04/28/what-is-the-qpixma/

于 2013-04-30T11:46:50.393 回答
0

似乎问题实际上出在wkhtmltoimage中,有一个错误报告。似乎该错误已被修复,但在当前稳定中没有。您可能要考虑尝试使用 RC,看看是否能解决您的问题。但请注意,通常不提倡在生产环境中使用 RC。

于 2011-11-07T08:30:17.280 回答