66 votes

Comment faire pour installer wkhtmltopdf sur un linux serveur web

J'ai essayé par tous les moyens à obtenir wkhtmltopdf installé sur notre serveur web, mais malheureusement, il n'est pas installé. Je ne peux pas accéder à user/bin comme l'a indiqué un tutoriel sur l'installation.

Sur le serveur, dans ce dossier il y a un sous dossier _vti_bin, j'ai copié le fichier wkhtmltopdf-i386 à partir de wkhtmltopdf-0.9.1-statique-i386, mais je ne suis pas capable de l'exécuter.

Comment faire pour installer wkhtmltopdf sur (hébergement mutualisé), serveur web et le faire fonctionner?

52voto

Christopher Points 847

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é pertinentes binaire statique v0.10.0 à partir d'ici: http://code.google.com/p/wkhtmltopdf/downloads/list

Nouveau projet home/Téléchargements

via ssh sur mon ordinateur hôte partagé tapé le suivant:

$ wget {relavant url to binary from link above}
$ tar -xvf {filename of above wget'd file}

vous aurez alors le binaire sur votre hôte et être capable de l'exécuter, indépendamment de si son dans le répertoire /usr/bin/ dossier ou pas. (ou, au moins, j'ai pu)

À tester:

$ ./wkhtmltopdf-amd64 http://www.example.com example.pdf
  • Remarque n'oubliez pas que si vous êtes dans le dossier dans lequel le fichier exécutable, vous devriez la faire précéder d' ./ juste pour être sûr.

Travaillé pour moi en tout cas

27voto

Mohit Jain Points 9959

Si son ubuntu puis aller de l'avant avec cette, déjà testé.:--

tout d'abord, l'installation de dépendances

sudo aptitude install openssl build-essential xorg libssl-dev

pour les 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 les 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

3voto

shanee Points 5689

Les Chances sont qu'en l'absence de l'accès à ce serveur (due à un compte hébergé) vous allez avoir des problèmes. J'irais même jusqu'à dire que je pense que c'est un vain effort, ils ont pour verrouiller les serveurs dans les environnements hébergés pour une bonne raison.

Appelez votre compagnie d'hébergement et d'en faire la demande à l'installer, mais ne pas s'attendre à une bonne réponse--en général, ils ne sont pas installer très personnalisé éléments pour un seul utilisateur, sauf s'il y a vraiment une bonne raison (corrections de bug par exemple).

Enfin, en fonction de comment vous vous serez familiarisé avec l'administration du serveur et ce que vous payez pour le serveur d'hébergement considérons maintenant quelque chose comme http://www.slicehost.com. 20 dollars par mois vous permet d'obtenir une faible teneur serveur web (256 mo de ram minimum) et vous pouvez installer ce que vous voulez. Toutefois, si vous exécutez plusieurs sites ou ont une lourde charge le coût va jusqu'que vous avez besoin de plus gros serveurs.

GL!

1voto

jockie Points 19

Placez le wkhtmltopdf exécutable sur le serveur et la commande chmod +x.

Créer un fichier exécutable le script shell 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écharger des objets partagés pour que l'architecture et les placer un à un dossier nommé "lib":

  • lib/libfontconfig,.donc.1
  • lib/libfontconfig,.donc.1.3.0
  • lib/libfreetype.donc.6
  • lib/libfreetype.donc.6.3.18
  • lib/libX11.donc.6 lib/libX11.donc.6.2.0
  • lib/libXau.donc.6 lib/libXau.donc.6.0.0
  • lib/libxcb.donc.1 lib/libxcb.donc.1.0.0
  • lib/libxcb-xlib.donc.0
  • lib/libxcb-xlib.donc.0.0.0
  • lib/libXdmcp.donc.6
  • lib/libXdmcp.donc.6.0.0
  • lib/libXext.donc.6 lib/libXext.donc.6.4.0

(certains d'entre eux sont des liens symboliques)

... et vous êtes prêt à aller:

./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 comme les places pour tous les personnages, de définir les polices TrueType explicitement:

@font-face {
  font-family:Trebuchet MS;
  font-style:normal;
  font-weight:normal;
  src:url("http://www.yourserver.tld/fonts/Trebuchet_MS.ttf");
  format(TrueType);
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X