J'ai essayé de toutes les manières d’obtenir wkhtmltopdf installé sur notre serveur Web, mais malheureusement, il ne s’est pas installé. Je ne peux pas accéder au dossier utilisateur/bin comme indiqué dans un didacticiel lors de l'installation.
Sur le serveur dans le dossier public_html, il existe un sous-dossier _vti_bin, j'ai copié le fichier wkhtmltopdf-i386 de wkhtmltopdf-0.9.1-static-i386, mais pas capable de l'exécuter.
Comment installer wkhtmltopdf sur un serveur Web (hébergement partagé) et le faire fonctionner?
J'ai réussi à installer wkhtmltopdf-AMD64 sur mon compte d'hébergement partagé sans accès root.
Voici ce que j'ai fait:
Téléchargé le binaire statique pertinent v0.10.0 à partir d’ici: http://code.google.com/p/wkhtmltopdf/downloads/list
EDIT: Ce qui précède est passé à ici
via ssh sur mon hôte partagé a tapé ce qui suit:
$ wget {relavant url to binary from link above}
$ tar -xvf {filename of above wget'd file}
vous aurez alors le fichier binaire sur votre hôte et pourrez l'exécuter, qu'il soit dans le dossier/usr/bin/ou non. (ou au moins j'ai pu)
Tester:
$ ./wkhtmltopdf-AMD64 http://www.example.com example.pdf
./
pour vous en assurer.Travaillé pour moi quand même
Sudo apt-get install wkhtmltopdf
Regardez les autres réponses.
Si son ubuntu alors allez-y, cela a déjà été testé.
d'abord, installer des dépendances
Sudo aptitude install openssl build-essential xorg libssl-dev
pour OS 64bits
wget http://wkhtmltopdf.googlecode.com/files/wkhtmltopdf-0.9.9-static-AMD64.tar.bz2
tar xvjf wkhtmltopdf-0.9.9-static-AMD64.tar.bz2
mv wkhtmltopdf-AMD64 /usr/local/bin/wkhtmltopdf
chmod +x /usr/local/bin/wkhtmltopdf
pour OS 32bits
wget http://wkhtmltopdf.googlecode.com/files/wkhtmltopdf-0.9.9-static-i386.tar.bz2
tar xvjf wkhtmltopdf-0.9.9-static-i386.tar.bz2
mv wkhtmltopdf-i386 /usr/local/bin/wkhtmltopdf
chmod +x /usr/local/bin/wkhtmltopdf
Il est fort probable que sans un accès complet à ce serveur (en raison de son compte hébergé), vous allez avoir des problèmes. J'irais même jusqu'à dire que je pense que c'est une entreprise infructueuse - ils doivent verrouiller les serveurs dans des environnements hébergés pour de bonnes raisons.
Appelez votre hébergeur et demandez-lui de l'installer, mais n'attendez pas une réponse satisfaisante: ils n'installent généralement pas d'éléments très personnalisés pour des utilisateurs uniques, à moins d'une raison valable (corrections de bugs par exemple).
Enfin, en fonction de votre connaissance de l'administration de serveur et de ce que vous payez pour l'hébergement de serveur, envisagez quelque chose comme http://www.slicehost.com . 20 $ par mois vous obtiendrez un serveur Web de bas niveau (256 RAM) et vous pourrez installer ce que vous voulez. Toutefois, si vous utilisez plusieurs sites ou que vous avez une charge de travail importante, le coût augmentera si vous avez besoin de serveurs plus grands.
GL!
Debian 8 Jessie
Cela fonctionne Sudo apt-get install wkhtmltopdf
Liste des versions stables wkhtmltopdf: http://wkhtmltopdf.org/downloads.html
Sudo apt-get install xfonts-75dpi
Sudo apt-get install xfonts-base
Sudo wget http://download.gna.org/wkhtmltopdf/0.12/0.12.2.1/wkhtmltox-0.12.2.1_linux-jessie-AMD64.deb
Sudo dpkg -i wkhtmltox-0.12.2.1_linux-jessie-AMD64.deb
Placez l'exécutable wkhtmltopdf sur le serveur et chmod it + x.
Créez un script shell exécutable wrap.sh contenant:
#!/bin/sh
export HOME="$PWD"
export LD_LIBRARY_PATH="$PWD/lib/"
exec $@ 2>/dev/null
#exec $@ 2>&1 # debug mode
Téléchargez les objets partagés nécessaires pour cette architecture et placez-les dans un dossier nommé "lib":
(certains d'entre eux sont des liens symboliques)
… Et vous êtes prêt à partir:
./wrap.sh ./wkhtmltopdf-AMD64 --page-size A4 --disable-internal-links --disable-external-links "http://www.example.site/" out.pdf
Si vous rencontrez des problèmes de police tels que des carrés pour tous les caractères, définissez les polices TrueType de manière explicite:
@font-face {
font-family:Trebuchet MS;
font-style:normal;
font-weight:normal;
src:url("http://www.yourserver.tld/fonts/Trebuchet_MS.ttf");
format(TrueType);
}
Après avoir essayé, les commandes ci-dessous fonctionnent pour moi
cd ~
yum install -y xorg-x11-fonts-75dpi xorg-x11-fonts-Type1 openssl git-core fontconfig
wget https://downloads.wkhtmltopdf.org/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-AMD64.tar.xz
tar xvf wkhtmltox-0.12.4_linux-generic-AMD64.tar.xz
mv wkhtmltox/bin/wkhtmlto* /usr/bin
Merci et salutations
Jaiswar Vipin Kumar R.
Quelques choses ont changé depuis l’ajout des réponses principales. Ils avaient l'habitude de travailler pour moi, mais plus maintenant, alors je me suis mis à bidouiller un peu pour proposer la solution suivante pour Ubuntu 16.04. Pour Ubuntu 14.04, voir le commentaire au bas de la réponse. Toutes mes excuses si cela ne fonctionne pas pour l'hébergement partagé, mais il semble que ce soit la réponse à goto pour les instructions d'installation de wkhtmltopdf en général.
# Install dependencies
apt-get install libfontconfig \
zlib1g \
libfreetype6 \
libxrender1 \
libxext6 \
libx11-6
# TEMPORARY FIX! SEE: https://github.com/wkhtmltopdf/wkhtmltopdf/issues/3001
apt-get install libssl1.0.0=1.0.2g-1ubuntu4.8
apt-get install libssl-dev=1.0.2g-1ubuntu4.8
# Download, extract and move binary in place
curl -L -o wkhtmltopdf.tar.xz https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-AMD64.tar.xz
tar -xf wkhtmltopdf.tar.xz
mv wkhtmltox/bin/wkhtmltopdf /usr/local/bin/wkhtmltopdf
chmod +x /usr/local/bin/wkhtmltopdf
Testez-le:
wkhtmltopdf http://www.google.com google.pdf
Vous devriez maintenant avoir un fichier nommé google.pdf
dans le répertoire de travail actuel.
Cette approche télécharge le fichier binaire à partir du site Web, ce qui signifie que vous pouvez utiliser la version la plus récente au lieu de vous fier aux gestionnaires de packages pour être mis à jour.
Notez que, à compter d’aujourd’hui, ma solution inclut un correctif temporaire pour ce bogue . Je me rends compte que la solution n'est vraiment pas géniale, mais j'espère qu'elle pourra être supprimée rapidement. Assurez-vous de vérifier le statut du problème lié à GitHub pour voir si le correctif est toujours nécessaire à la lecture de cette réponse!
Pour Ubuntu 14.04, vous devrez revenir à une version différente de libssl. Vous pouvez trouver les versions ici . Quoi qu'il en soit, assurez-vous de prendre en compte les conséquences de la mise à niveau antérieure de libssl avant de le faire sur un serveur de production.
J'espère que ça aidera quelqu'un!
Hébergement partagé sans accès ssh ou shell?
Voici comment je l'ai fait;