Не удается запустить командную строку wkhtmltopdf через функцию exec() в php, но та же команда работает в командной строке


Я использую wkhtmltopdf для генерации pdf-файлов из html, я пытаюсь выполнить приведенную ниже команду с помощью функции PHP exec(), но она не генерирует pdf, хотя я не показываю никаких ошибок. Но когда я выполнил ту же команду через командную строку, это сработало.

Ниже приведен мой PHP-код, который я использую для выполнения команды создания pdf.

$command = "wkhtmltopdf -s A4 /inputhtmlfilepath/test.html /outputfilepath/output.pdf";
exec($command);

Некоторая информация о моей настройке:

Операционная система - Ubuntu 12.04

Версия PHP - 5.4.3

Любая помощь была бы ценю, Спасибо.

Author: Tapaswi Panda, 2014-09-23

1 answers

Если вы получаете сообщение "не удается подключиться к ошибке X-сервера", пожалуйста, попробуйте это.

1. Установите пакет xvfb

 sudo apt-get install xvfb

2. Создайте файл как 'wkhtmltopdf.sh 'и добавьте к этому следующий код и сохраните

xvfb-run -a -s "-screen 0 640x480x16" wkhtmltopdf "$@"

3. Затем переместите этот файл в /usr/local/bin и предоставьте разрешения

sudo chmod 555 /usr/local/bin/wkhtmltopdf.sh

4. Затем попробуйте создать pdf, выполнив команду.

/usr/local/bin/wkhtmltopdf.sh input.html output.pdf
 9
Author: Suryakantadas, 2014-09-25 11:48:33