Domanda

Ho provato in tutti i modi per ottenere wkhtmltopdf installato sul nostro server web, ma purtroppo non è sempre installato. Non riesco ad accedere cartella utente / bin come indicato in un tutorial per l'installazione.

Sul server in public_html cartella c'è una sottocartella _vti_bin , ho copiato il file wkhtmltopdf-i386 wkhtmltopdf- 0.9.1-static-i386 , ma non sono in grado di eseguirlo.

Come installare wkhtmltopdf (hosting condiviso) server web e farlo funzionare?

È stato utile?

Soluzione

Sono riuscito a installare correttamente wkhtmltopdf-amd64 sul mio account di hosting condiviso, senza privilegi di root.

Ecco quello che ho fatto:

Ho scaricato la v0.10.0 binario statico rilevante da qui: http://code.google .com / p / wkhtmltopdf / downloads / lista

EDIT: È possibile che questo si è spostato a qui

via ssh sul mio host condiviso digitato il seguente:

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

si Avrai quindi la binaria sul vostro host e sarà in grado di farlo funzionare a prescindere se nella directory / usr / bin / cartella o no. (O almeno sono riuscito a)

Per prova:

$ ./wkhtmltopdf-amd64 http://www.example.com example.pdf
  • Nota ricordate che se siete nella cartella in cui il file eseguibile è, probabilmente si dovrebbe precedere con ./ solo per essere sicuri.

Ha lavorato per me comunque

Altri suggerimenti

Se si ha accesso sudo ...

Ubuntu 14.04 / 15.04 / 18.04:

sudo apt-get install wkhtmltopdf
# or
sudo apt install wkhtmltopdf

Altro

Guarda le altre risposte.

Se le sue ubuntu poi andare avanti con questo, già sperimentato: -.

In primo luogo, le dipendenze installazione

sudo aptitude install openssl build-essential xorg libssl-dev

per 64bit 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

per 32bit 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

È probabile che senza il pieno accesso a questo server (a causa di essere un account ospitato) si sta andando ad avere problemi. Mi spingerei fino a dire che penso che sia uno sforzo inutile -. Hanno per bloccare i server verso il basso in ambienti ospitati per una buona ragione

Chiamare la società di hosting e fare la richiesta per loro di installarlo, ma non aspettatevi una buona risposta - che in genere non installeranno elementi molto personalizzati per i singoli utenti a meno che non ci sia una buona ragione (correzioni di bug per esempio).

Infine, a seconda di come familiare siete con l'amministrazione del server e quello che si sta pagando per server che ospita ora prendere in considerazione qualcosa di simile a http: //www.slicehost.com . $ 20 al mese ti porterà un web server di basso grado (256 RAM) ed è possibile installare tutto quello che vuoi. Tuttavia, se si esegue più siti o hai pesante carico il costo salirà come avete bisogno di server di grandi dimensioni.

GL!

Debian 8 Jessie
Questo funziona sudo apt-get install wkhtmltopdf

Posizionare l'eseguibile wkhtmltopdf sul server e chmod + x esso.

Crea un file eseguibile wrap.sh script di shell contenente:

#!/bin/sh
export HOME="$PWD"
export LD_LIBRARY_PATH="$PWD/lib/"
exec $@ 2>/dev/null
#exec $@ 2>&1 # debug mode

Scarica necessari oggetti condivisi per l'architettura e metterli un una cartella denominata "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

(alcuni di loro sono collegamenti simbolici)

... e si è pronti ad andare:

./wrap.sh ./wkhtmltopdf-amd64 --page-size A4 --disable-internal-links --disable-external-links "http://www.example.site/" out.pdf

In caso di problemi di carattere come piazze per tutti i personaggi, definire i caratteri TrueType in modo esplicito:

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

Lista di versioni stabili wkhtmltopdf: http://wkhtmltopdf.org/downloads.html

Installazione di Debian 8.2 wkhtmltopdf su (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

Un paio di cose sono cambiate da quando sono state aggiunte le risposte migliori. Hanno usato per lavorare per me, ma non del tutto più, così mi sono stati hacking in giro per un po 'e si avvicinò con la seguente soluzione per Ubuntu 16.04 . Per Ubuntu 14.04, vedere il commento in fondo la risposta. Mi scuso se questo non funziona per l'hosting condiviso, ma sembra come questo è la risposta goto per le istruzioni di installazione wkhtmltopdf in generale.

# 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

Prova it out:

wkhtmltopdf http://www.google.com google.pdf

Ora si dovrebbe avere un file chiamato google.pdf nella directory di lavoro corrente.

Questo approccio scarica il binario dal sito web, il che significa che è possibile utilizzare la versione più recente invece di affidarsi a gestori di pacchetti da aggiornare.

Si noti che a partire da oggi, la mia soluzione include una correzione temporanea a questo bug . Mi rendo conto che la soluzione non è davvero grande, ma si spera che possa essere rimosso al più presto. Assicurati di controllare lo stato della questione legata GitHub per vedere se la correzione è ancora necessario quando si legge questa risposta!

Per Ubuntu 14.04, avrete bisogno di effettuare il downgrade ad una versione diversa di libssl. Puoi trovare le versioni qui . In ogni modo, essere sicuri di prendere in considerazione le implicazioni di declassamento libssl prima di farlo su qualsiasi server di produzione.

Spero che questo aiuta qualcuno!

Dopo aver provato, sotto il comando di lavoro per me

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

Grazie e saluti

Jaiswar Vipin Kumar R.

hosting condiviso non ssh o guscio di accesso?

Ecco come ho fatto;

  1. https://wkhtmltopdf.org/downloads.html e scaricare la versione stabile appropriata per Linux. Per il mio caso ho scelto a 32 bit che è wkhtmltox-0.12.4_linux-generic-i386.tar.xz
  2. Unzip in una cartella sul disco locale.
  3. Carica la cartella a public_html (o qualsiasi posizione soddisfa le proprie necessità) utilizzando un programma FTP come qualsiasi altro file (s)
  4. Modificare i percorsi di file binari in snappy.php per puntare i file appropriati nella cartella che hai appena caricato. Bingo! Ecco qua. Si dovrebbe essere in grado di generare file PDF.

La versione 12.5 di wkhtmltopdf elenca solo i file DEB sulla loro pagina di download. Essendo un utente Mac e non sapendo molto Linux o quali file DEB erano non ho potuto utilizzare le soluzioni pubblicate.

Questa pagina mi ha aiutato a superare la torsione di download di un file DEB sapevano: http://www.g-loaded.eu/2008/01/28/how-to-extract-rpm-or-deb-packages/

In pratica quello che ho fatto è stato:

  1. https://wkhtmltopdf.org/downloads.html
  2. decompresso il file .deb.
  3. data.tar.xz Unzipped
  4. Inviato il binario nella cartella decompressa 'usr' dal punto 3 (usr / local / bin / wkhtmltopdf)

Poi ho scoperto che la funzione 'exec' è stato disattivato il mio ospite. Quindi, assicurarsi la possibilità di eseguire specificamente 'exec' se si sta utilizzando PHP per eseguire questo. "Posso eseguire il file binario wkhtmltopdf" non è abbastanza specifico. Colpa mia.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top