【问题标题】:Wicked PDF silently fails on OS X邪恶的 PDF 在 OS X 上静默失败
【发布时间】:2014-11-18 07:13:07
【问题描述】:

使用相同的代码和 gem 版本,它在 Ubuntu(14.04、64 位)中运行良好。目前我正在使用:

  • wkhtmltopdf-binarygem v0.9.9.1
  • wicked_pdfgem v0.10.2
  • Rails 4.1.1
  • Ruby 2.1.3
  • OS X 10.10,64 位

当我尝试从 Rails 生成 PDF 时,我收到错误消息:wkhtmltopdf_darwin_386 quit unexpectedly。以下是完整的错误信息:

Process:               wkhtmltopdf_darwin_386 [1208]
Path:                  /Users/USER/*/wkhtmltopdf_darwin_386
Identifier:            wkhtmltopdf_darwin_386
Version:               ???
Code Type:             X86 (Native)
Parent Process:        ruby [1207]
Responsible:           Terminal [560]
User ID:               502

Date/Time:             2014-11-18 13:57:49.082 +0700
OS Version:            Mac OS X 10.10 (14A389)
Report Version:        11
Anonymous UUID:        FE32CAE5-D54C-30C5-5D5E-6B3F12C58027

Sleep/Wake UUID:       83991D0B-AAA7-4EE0-8FF7-5034B78B788F

Time Awake Since Boot: 8000 seconds
Time Since Wake:       1100 seconds

Crashed Thread:        Unknown

Exception Type:        EXC_BAD_ACCESS (SIGBUS)
Exception Codes:       KERN_PROTECTION_FAILURE at 0x0000000000000001

Backtrace not available

Unknown thread crashed with X86 Thread State (32-bit):
  eax: 0x015382c8  ebx: 0x00d8c971  ecx: 0x00000001  edx: 0x00000000
  edi: 0x00000000  esi: 0x015382b4  ebp: 0xbfff6428  esp: 0xbfff6040
   ss: 0x00000023  efl: 0x00010246  eip: 0x00d8e3c2   cs: 0x0000001b
   ds: 0x00000023   es: 0x00000023   fs: 0x00000000   gs: 0x0000000f
  cr2: 0x00000001

Logical CPU:     3
Error Code:      0x00000004
Trap Number:     14


Binary images description not available


External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 1
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 3109
    thread_create: 0
    thread_set_state: 0

我之所以在标题中说静默,是因为当我检查服务器日志时,它运行良好。摘录如下:

"***************\"/Users/david/.rbenv/versions/2.1.3/bin/wkhtmltopdf\" -q  --footer-html \"file:////var/folders/4w/fybp8mln1pn91cqrxq6z2kcc0000gp/T/wicked_footer_pdf20141118-1102-1uce4hg.html\"     --margin-bottom 13    \"file:////var/folders/4w/fybp8mln1pn91cqrxq6z2kcc0000gp/T/wicked_pdf20141118-1102-1jrv3s8.html\" \"/var/folders/4w/fybp8mln1pn91cqrxq6z2kcc0000gp/T/wicked_pdf_generated_file20141118-1102-qu51nc.pdf\" ***************"
  Rendered text template (1.1ms)
Sent data test.pdf (8.4ms)
Completed 200 OK in 6516ms (Views: 7.5ms | ActiveRecord: 6.8ms)

运行which wkhtmltopdf 给了我/Users/david/.rbenv/shims/wkhtmltopdf.. 当我单独运行测试wkhtmltopdf(如wkhtmltopdf test1.html test1.pdf)时,它运行完美。

wkhtmltopdf_darwin_386 在基于 64 位的体系结构中是否可能无法正常工作? (尽管我的 Ubuntu 也是基于 64 位的。)

感谢任何帮助。

【问题讨论】:

  • 你有想过这个吗?

标签: ruby-on-rails macos wicked-pdf


【解决方案1】:

你做过吗? :

创建/编辑文件:

config/initializers/wicked_pdf.rb

If your wkhtmltopdf executable is not on your webserver's path, you can configure it in an initializer:

WickedPdf.config = {
  :exe_path => '/Users/USER/*/wkhtmltopdf_darwin_386'
}

soure

【讨论】:

  • 问题是,wkhtmltopdf 执行但意外退出。这应该意味着找到可执行文件,但有什么导致它退出,对吧?顺便说一句,我刚刚更新了我的问题:)
猜你喜欢
  • 1970-01-01
  • 2013-01-21
  • 1970-01-01
  • 1970-01-01
  • 2013-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多