#php #apache2 #wkhtmltopdf
#php #apache2 #wkhtmltopdf
Вопрос:
как я могу выполнить команду wkhtmltopdf http://google.com /tmp/test.pdf
с сервера ie http://localhost/test.php , когда я делаю это из командной строки, это работает. Я пробовал функции system () и exec (), но они не работали. Когда я использую system('touch /tmp/test')
файл, создается. Что останавливает wkhtmltopdf? Это php, apache?
Комментарии:
1. Был ли он установлен на сервере? И был ли он добавлен в путь для выполнения?
Ответ №1:
Убедитесь, что пользователь, на котором запущен скрипт, знает, где находится ячейка wkhtmltopdf.
Вы можете узнать, где он находится, с помощью команды which.
which wkhtmltopdf
Также вы можете получить статус возврата команды, установив равную ему переменную
, например
$last_line = system('ls');
echo $last_line
Комментарии:
1. Использование этого на сервере дает мне /usr/bin/wkhtmltopdf
2. Итак, где бы вы ни использовали wkhtmltopdf, укажите полный путь: system(‘/usr/bin/wkhtmltopdf google.com /tmp/test.pdf’);
3. Анализатор автоматически превращает его в ссылку Google, поэтому вам придется вручную выписать часть http: //.