Comment installer wkhtmltopdf sur un serveur web basé sur linux (Hébergement Partagé)
J'ai essayé par tous les moyens de faire installer wkhtmltopdf sur notre serveur web mais malheureusement il ne s'installe pas. Je ne peux pas accéder au dossier user / bin comme indiqué dans un tutoriel sur l'installation.
Sur le serveur dans public_html 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 installer wkhtmltopdf sur (partagé hébergement) serveur web et le faire fonctionner?
10 réponses
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 a été déplacé vers ici
Via ssh sur mon hôte partagé tapé ce qui suit:
$ 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 pourrez l'exécuter indépendamment de si c'est dans le dossier/usr/ bin / ou non. (ou du moins j'ai pu)
Pour tester:
$ ./wkhtmltopdf-amd64 http://www.example.com example.pdf
- Note rappelez-vous que si vous êtes dans le dossier dans lequel se trouve l'exécutable, vous devriez probablement le préfacer avec
./
juste pour être sûr.
Travaillé pour moi de toute façon
Ubuntu 14.04 / 15.04:
sudo apt-get install wkhtmltopdf
Autres
Regardez les autres réponses.
Si c'est ubuntu alors allez-y, déjà testé.:--
Tout d'abord, installer des dépendances
sudo aptitude install openssl build-essential xorg libssl-dev
Pour 64bits OS
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 32 bits OS
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 probable que sans un accès complet à ce serveur (en raison d'être un compte hébergé), vous allez avoir des problèmes. J'irais jusqu'à dire que je pense que c'est une entreprise infructueuse-ils doivent verrouiller les serveurs dans des environnements hébergés pour une bonne raison.
Appelez votre hébergeur et demandez-lui 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 très bonne raison (corrections de bugs pour exemple).
Enfin, en fonction de la façon dont vous êtes familier avec l'administration du serveur et ce que vous payez pour l'hébergement du serveur maintenant envisager quelque chose comme http://www.slicehost.com . 20 $ par mois vous obtiendrez un serveur web de faible qualité (256 ram) et vous pouvez installer tout ce que vous voulez. Cependant, si vous exécutez plusieurs sites ou avez une charge lourde, le coût augmentera car vous avez besoin de serveurs plus grands.
GL!
Debian 8 Jessie
Cela fonctionne
sudo apt-get install wkhtmltopdf
Placez l'exécutable wkhtmltopdf sur le serveur et chmod it + X.
Créer 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":
- 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 polices 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
Installation de 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 plus, donc j'ai piraté un peu et est venu avec la solution suivante pour Ubuntu 16.04. Pour Ubuntu 14.04, voir le commentaire en bas de la réponse. Toutes mes excuses si cela ne fonctionne pas pour l'hébergement partagé, mais il semble que c'est 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 courant.
Cette approche télécharge le binaire à partir du site web, ce qui signifie que vous pouvez utiliser la dernière version au lieu de compter sur les gestionnaires de paquets à mettre à jour.
Notez qu'à compter d'aujourd'hui, ma solution inclut un correctif temporaire pour ce bug. Je me rends compte que la solution n'est vraiment pas géniale, mais j'espère qu'elle pourra être supprimée bientôt. Assurez-vous de vérifier l'état du problème GitHub lié 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, assurez-vous de considérer les implications de la rétrogradation de libssl avant de le faire sur n'importe quel serveur de production.
J'espère que cela aide quelqu'un!
Hébergement mutualisé pas d'accès SSH ou shell?
Voici comment je l'ai fait;
- Visite https://wkhtmltopdf.org/downloads.html {[7] } et téléchargez la version stable appropriée pour Linux. Pour mon cas, j'ai choisi 32 bits qui est wkhtmltox-0.12. 4_linux-generic-i386.tar.xz
- décompressez dans un dossier sur votre disque local.
- Téléchargez le dossier dans public_html(ou n'importe quel emplacement qui correspond à vos besoins) en utilisant un programme FTP comme n'importe quel autre fichier
- Modifier les chemins binaires en dynamique.fichier php pour pointer les fichiers appropriés dans le dossier que vous venez de télécharger. Bingo! il vous en avez. Vous devriez être en mesure de générer des fichiers PDF.
Après avoir essayé, la commande ci-dessous 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 Cordialement
Jaiswar Vipin Kumar R.