Не удается запустить командную строку 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
Любая помощь была бы ценю, Спасибо.
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