Я попытался во всех отношениях получить wkhtmltopdf, установленный на нашем веб-сервере, но к сожалению это не становится установленным. Я не могу пользователь доступа / папка мусорного ведра, как указано в учебном руководстве на установке.
На сервере в public_html папке существует sub папка _vti_bin, я скопировал файл wkhtmltopdf-i386 с wkhtmltopdf-0.9.1-static-i386, но я не могу выполнить его.
Как установить wkhtmltopdf на (совместно использованный хостинг) веб-сервер и получить его работа?
Мне удалось успешно установить wkhtmltopdf-amd64 на свой виртуальный хостинг без root-доступа.
Вот что я сделал:
Скачал соответствующий статический бинарник v0.10.0 отсюда: http://code.google.com/p/wkhtmltopdf/downloads/list
EDIT: The above has moved to here
via ssh on my shared host typed the following:
$ wget {relavant url to binary from link above}
$ tar -xvf {filename of above wget'd file}
you'll then have the binary on your host and will be able to run it regardless whether its in the /usr/bin/ folder or not. (или, по крайней мере, я смог)
Для проверки:
$ ./wkhtmltopdf-amd64 http://www.example.com example.pdf
./
, просто чтобы быть уверенным. Сработало для меня в любом случае
Скорее всего, без полного доступа к этому серверу (из-за того, что это размещенная учетная запись) у вас возникнут проблемы. Я бы пошел еще дальше и сказал, что считаю это бесплодным начинанием - они должны блокировать серверы в размещенных средах по уважительной причине.
Позвоните в свою хостинговую компанию и попросите их установить его, но не ожидайте хорошего ответа - они обычно не устанавливают очень нестандартные элементы для отдельных пользователей, если нет действительно веской причины (исправлены ошибки для пример).
Наконец, в зависимости от того, насколько вы знакомы с администрированием серверов и сколько вы платите за хостинг серверов, теперь рассмотрите вариант вроде http://www.slicehost.com . За 20 долларов в месяц вы получите низкокачественный веб-сервер (256 RAM), и вы сможете установить все, что захотите. Однако, если у вас несколько сайтов или у вас большая нагрузка, стоимость возрастет, так как вам понадобятся серверы большего размера.
GL!
Поместите исполняемый файл wkhtmltopdf на сервер и выполните команду chmod его + x.
Создайте исполняемый сценарий оболочки wrap.sh, содержащий:
#!/bin/sh
export HOME="$PWD"
export LD_LIBRARY_PATH="$PWD/lib/"
exec $@ 2>/dev/null
#exec $@ 2>&1 # debug mode
Загрузите необходимые общие объекты для этой архитектуры и поместите их в папку с именем «lib»:
(некоторые из них являются символическими ссылками)
… и вы готовы к работе:
./wrap.sh ./wkhtmltopdf-amd64 --page-size A4 --disable-internal-links --disable-external-links "http://www.example.site/" out.pdf
Если вы испытываете проблемы со шрифтами, такие как квадраты для всех символов, определите шрифты TrueType явно:
@font-face {
font-family:Trebuchet MS;
font-style:normal;
font-weight:normal;
src:url("http://www.yourserver.tld/fonts/Trebuchet_MS.ttf");
format(TrueType);
}