2011-11-23 135 views
2

我真的有麻煩讓這個二進制文件運行(我花了幾天和幾天!)。wkhtmltoimage錯誤 - 無法執行二進制文件

我想通過Apache web服務器(icdsoft.com)在Linux操作系統上運行wkhtmltoimage,託管公司告訴我應該使用static-amd64。我下載的文件爲:

http://code.google.com/p/wkhtmltopdf/downloads/detail?name=wkhtmltoimage-0.11.0_rc1-static-amd64.tar.bz2並且未壓縮。

我沒有對服務器ssh訪問,但託管公司說我可以從一個目錄,如運行的二進制:

/home/notice/www/www/wkhtmltoxdoc/ 

...雖然我認爲它必須是這樣的:

/usr/local/bin/ 

所以我已經上傳的文件 「wkhtmltoimage-AMD64」 到/ home /通知/網絡/網絡/ wkhtmltoxdoc /,並更名爲 「wkhtmltoimage」。我也製作了這個文件的副本,並將其命名爲「wkhtmltoimage.bin」(有人說這有幫助)。我改變文件和目錄「wkhtmltoxdoc」有權限777

然後我試圖使用PHP它沒有產生任何結果(無文件的創建)調用二進制文件(有和沒有擴展名爲.bin):

注:[bbc_url] = http://www.bbc.com(我不能超過2個鏈接後)

shell_exec('./wkhtmltoxdoc/wkhtmltoimage.bin [bbc_url] ./wkhtmltoxdoc/bbc.jpg'); 
shell_exec('./wkhtmltoxdoc/wkhtmltoimage [bbc_url] ./wkhtmltoxdoc/bbc2.jpg'); 

然後我試圖讓二進制到我的本地系統OS X 10.6.8上運行 - 我都抄先前的amd-64文件和32位文件(http://code.google.com/p/wkhtmltopdf/downloads/detail?name=wkhtmltoimage-0.11.0_rc1-static-i386.tar.bz2)t Ø在/ usr/local/bin目錄,並改變了他們的權限爲777。這些都是要在/ usr/local/bin目錄目錄,並試圖在終端運行它的結果:

$ wkhtmltoimage-amd64 [bbc_url] /Users/jazz/Desktop/bbc.jpg 
-bash: /usr/local/bin/wkhtmltoimage-amd64: cannot execute binary file 

$ wkhtmltoimage-i386 [bbc_url] /Users/jazz/Desktop/bbc.jpg 
-bash: /usr/local/bin/wkhtmltoimage-i386: cannot execute binary file 

的目標是讓wkhtmltoimage在外部服務器上,但我只是想在我的本地進行測試。

我發現這對wkhtmltoimage手冊中: 「在Linux這取決於雙方的glibc和OpenSSL,此外,您將需要安裝一個Xserver的,但沒有必要運行時,您將需要有不同的字體安裝包括xfonts-。可縮放(Type1)和msttcorefonts「。

我的服務器支持說: 「Glibc和OpenSSL在服務器上是可用的,但是XServer沒有,我們嘗試從shell運行命令,它運行時沒有產生任何錯誤,但是無法創建映像如果沒有XServer,它很可能無法工作,不幸的是,我們無法安裝XServer,它是Linux的圖形系統,不適合託管服務器。

如果有人能幫助我,我真的很感激它!非常感謝!

回答

2

我在我的Mac上本地成功運行OSX wkhtmltoimage靜態版本(最新預先打包的我發現:wkhtmltoimage-OSX-0.10.0_rc2-static.tar.bz2),並且對於服務器我上傳了i386版本。

我在OSX終端首先

./wkhtmltoimage --width 1280 --height 700 http://www.google.com wktest.jpg 

(更新)在本地測試了它的一些技巧可能有用:執行位是在程序中設置

  • 確保(CHMODü + x或ugo + x)
  • 我在我的主目錄下的linux服務器上安裝了wkhtml
    〜/ wkhtmldir(/ home/username/wkhtmldir)。
    似乎該程序可查找和使用置於放在〜/ .fonts

編輯(TTF)字體:
如果您有Linux服務器上的CSS字體使用的問題(我有),
如:未定義符號:FcFreeTypeQueryFace,那麼fontconfig可能需要更新
請參閱此問題:http://code.google.com/p/wkhtmltopdf/issues/detail?id=352

相關問題