2012-03-08 3 views
4

1) Я загрузил «wkhtmltopdf-i386» на мой сервер в папку с именем «/ PDF»wkhtmltopdf Выпуск

2) Я загрузил скрипт интеграции PHP, в той же папке, и назвал его «wkhtmltopdf.php "(http://code.google.com/p/wkhtmltopdf/wiki/IntegrationWithPhp)

3) Я загрузил файл, который я назвал "usage.php", в той же папке, содержащий:

<?php 
require_once('wkhtmltopdf.php'); 
$pdf=new WKPDF(); 
$pdf->set_html('Hello world!'); 
$pdf->render(); 
$pdf->output(WKPDF::$PDF_EMBEDDED,'sample.pdf'); 
?> 

4) Я создал папку/tmp с 777 правами доступа (все).

Когда я загружаю usage.php, я получаю следующее сообщение об ошибке:

"Fatal error: Uncaught exception 'Exception' with message 'WKPDF didn't return any data. <pre></pre>' in /home/***/public_html/dev/pdf/wkhtmltopdf.php:205 Stack trace: #0 /home/***/public_html/dev/pdf/usage2.php(5): WKPDF->render() #1 {main} thrown in /home/***/public_html/dev/pdf/wkhtmltopdf.php on line 205" 

Для вашей информации, HTML страница отображается в папке/TMP каждый раз, когда я загружаю usage.php.

У вас есть ключ к решению проблемы?

Благодаря

+0

Попробуйте сбросить выполненную команду и запустить ее из оболочки и посмотреть, что такое выходные или возможные ошибки. –

+0

@BartoszGrzybowski Это тихо проваливается, когда я использую exec (wkhtmltopdf http://www.google.com google.pdf); –

+0

Установите 'strace' и запустите его, он должен показать, когда он выходит, я отлаживал его так много раз. 'strace command' anywho, насколько я помню, он терпит неудачу, когда возникают проблемы с разрешениями. –

ответ

0

Вы пробовали смотреть внутри вашего wkhtmltopdf.php?

Убедитесь, что эта линия:

/** 
* path to executable 
*/ 
protected $_bin = '/usr/bin/wkhtmltopdf'; 

не является /usr/bin/wkhtmltopdf, но это абсолютный путь, где вы кладете wkhtmltopdf-i386.

В вашем случае, возможно, это /pdf/wkhtmltopdf-i386.