Comment installer wkhtmltopdf sur un serveur web basé sur Linux (hébergement mutualisé)

J’ai essayé de toutes les manières d’installer wkhtmltopdf sur notre serveur Web, mais malheureusement, il n’est pas installé. Je ne peux pas accéder au dossier utilisateur / bin comme indiqué dans un didacticiel sur l’installation.

Sur le serveur dans le dossier public_html , il y a un sous-dossier _vti_bin , j’ai copié le fichier wkhtmltopdf-i386 à partir de wkhtmltopdf-0.9.1-static-i386 , mais je ne parviens pas à l’exécuter.

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

J’ai réussi à installer wkhtmltopdf-amd64 sur mon compte d’hébergement partagé sans access root.

Voici ce que j’ai fait:

Téléchargé le fichier binary statique pertinent v0.10.0 à partir d’ici: http://code.google.com/p/wkhtmltopdf/downloads/list

EDIT: Le ci-dessus a déménagé ici

via ssh sur mon hôte partagé, tapez ce qui suit:

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

vous aurez alors le binary sur votre hôte et pourrez l’exécuter indépendamment du fait 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 
  • Notez que si vous êtes dans le dossier dans lequel se trouve l’exécutable, vous devriez probablement le faire avec ./ juste pour en être sûr.

A travaillé pour moi quand même

Ubuntu 14.04 / 15.04:

 sudo apt-get install wkhtmltopdf 

Autres

Regardez les autres réponses.

Si son ubuntu continue alors avec cela, déjà 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 

Les chances sont que sans access complet à ce serveur (en raison d’être un 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 fermer les serveurs dans des environnements hébergés pour une bonne raison.

Appelez votre hébergeur et demandez-leur de l’installer, mais ne vous attendez pas à une bonne réponse – ils n’installeront généralement pas d’éléments très personnalisés pour les utilisateurs individuels, sauf s’il y a une bonne raison (correctifs de bogues, par exemple).

Enfin, en fonction de votre connaissance de l’administration du serveur et de ce que vous payez pour l’hébergement de serveur, considérez maintenant quelque chose comme http://www.slicehost.com . 20 $ par mois vous procureront un serveur Web de qualité inférieure (256 RAM) et vous pourrez installer tout ce que vous voulez. Toutefois, si vous exécutez plusieurs sites ou si vous avez une charge importante, le coût augmentera à mesure que vous aurez besoin de serveurs plus importants.

GL!

Debian 8 Jessie
Cela fonctionne sudo apt-get install wkhtmltopdf

Placez l’exécutable wkhtmltopdf sur le serveur et chmod + 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 objects partagés nécessaires pour cette architecture et placez-les dans un dossier nommé “lib”:

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

(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 comme des carrés pour tous les caractères, définissez explicitement les fonts 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); } 

Liste des versions stables wkhtmltopdf: http://wkhtmltopdf.org/downloads.html

Installer wkhtmltopdf sur Debian 8.2 (Jessie) x64:

 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 

Quelques choses ont changé depuis que les meilleures réponses ont été ajoutées. Ils avaient l’habitude de travailler pour moi, mais pas tout à fait, alors j’ai été un peu piraté et j’ai trouvé 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 à toutes les questions concernant 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 en cours.

Cette approche télécharge le binary à partir du site Web, ce qui signifie que vous pouvez utiliser la dernière version au lieu de compter sur les gestionnaires de packages pour la mise à jour.

Notez qu’à ce jour, ma solution inclut un correctif temporaire à ce bogue . Je me rends compte que la solution n’est vraiment pas géniale, mais j’espère qu’elle pourra bientôt être supprimée. Assurez-vous de vérifier le statut du problème lié à GitHub pour voir si le correctif est toujours nécessaire lorsque vous lisez cette réponse!

Pour Ubuntu 14.04, vous devrez passer à une version différente de libssl. Vous pouvez trouver les versions ici . Quoi qu’il en soit, veillez à prendre en compte les conséquences de la rétrogradation de libssl sur un serveur de production.

J’espère que ça aidera quelqu’un!

Hébergement partagé sans access ssh ou shell?

Voici comment je l’ai fait;

  1. Visitez https://wkhtmltopdf.org/downloads.html et téléchargez la version stable appropriée pour Linux. Pour mon cas j’ai choisi 32-bit qui est wkhtmltox-0.12.4_linux-generic-i386.tar.xz
  2. Décompressez dans un dossier sur votre lecteur local.
  3. Chargez le dossier dans public_html (ou dans n’importe quel emplacement) en utilisant un programme FTP comme n’importe quel autre fichier.
  4. Modifiez les chemins binarys dans le fichier snappy.php pour pointer les fichiers appropriés dans le dossier que vous venez de télécharger. Bingo! Voilà. Vous devriez pouvoir générer des fichiers PDF.

Après avoir essayé, ci-dessous la commande fonctionne 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.