使用wkhtmltopdf时,php shell exec挂起

时间:2012-08-04 09:23:22

标签: php wkhtmltopdf shell-exec

我正在尝试使用PHP从HTML生成PDF。我正在运行Mac OS X作为我的开发环境,尽管我希望这些代码在生产Linux服务器上运行。

到目前为止,我有:

$url = escapeshellarg("http://www.google.com/");
$output = shell_exec("/usr/local/Cellar/wkhtmltopdf/0.11.0_rc1/bin/wkhtmltopdf " . $url . " /tmp/tmp_pdf.pdf 2>&1");
echo "<pre>$output</pre>";

此代码确实在/tmp/tmp_pdf.pdf中生成PDF。 问题是它永远不会

echo "<pre>$output</pre>";

浏览器只是挂着说等待服务器......

它几乎就像shell_exec命令永远不会完成一样。我注意到当我从终端运行wkhtmltopdf时它不会退回到命令行。我明白了:

Loading page (1/2)
Printing pages (2/2)                                               
Done 

然后它也在那里,类似于php脚本。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

问题在于用rexmac指出的版本。使用wkhtmltopdf的静态二进制文件修复了OP的问题。