wicked_pdf не работает на производственном сервере
Локально Это работает без каких-либо ошибок, но когда я пытаюсь сгенерировать PDF на сервере, он выдает:
RuntimeError (Failed to execute:
["/usr/local/bin/wkhtmltopdf", "-q", "file:////tmp/wicked_pdf20180531-994-1x8fbfn.html", "/tmp/wicked_pdf_generated_file20180531-994-1vidmtk.pdf"]
Error: PDF could not be generated!
Command Error: /usr/bin/env: ruby: No such file or directory
Вот что на my_controller.
pdf=WickedPdf.new.pdf_from_string(render_to_string('disc_bill',:layout=>false))
save_file = Rails.root.join("public","bill.pdf")
File.open(save_file, 'wb') do |file|
file << pdf
end
И в моем Gemfile
gem 'wicked_pdf', '~> 1.1'
gem 'wkhtmltopdf-binary', '~> 0.12.3.1'
2 ответа
Похоже, что команда wkhtmltopdf отсутствует в переменной PATH, это можно исправить, изменив WickedPdf.config на
WickedPdf.config = {
exe_path: (Rails.env.production? ? '/path/to/bin/wkhtmltopdf' : '/usr/local/bin/wkhtmltopdf'
}
Когда я понижал версию wkhtmltopdf до 0.9.9 на сервере, у меня работало