refinerycms图像不加载 - 蜻蜓错误(refinerycms image not load

2019-06-26 02:00发布

我正在开发一个refinerycms轨的应用程序,正在当地良好的,现在我已经把它移到我的VPS和我是有我通过refinerycms不加载上传的图片的问题,我一直在读,我需要升级我的版本的ImageMagick的。 我升级从6.2.8到6.7.8。 现在,图像在一些网页上的所有负载,而不是在管理方面。

是什么原因造成这个问题? 下面是错误的堆栈跟踪。

Dragonfly::Shell::CommandFailed (Command failed (convert '/var/www/vhosts/tomstestsite.us/PersonalTrainingKT/public/system/refinery/images/2012/06/03/16_36_48_339_pamLemke_after.jpg' '-resize' '225x255>' '/tmp/dragonfly20120705-7812-1xb3pce') with exit status 127):
  dragonfly (0.9.12) lib/dragonfly/shell.rb:29:in `raise_shell_command_failed'
  dragonfly (0.9.12) lib/dragonfly/shell.rb:23:in `run'
  dragonfly (0.9.12) lib/dragonfly/image_magick/utils.rb:17:in `convert'
  dragonfly (0.9.12) lib/dragonfly/image_magick/processor.rb:103:in `convert'
  dragonfly (0.9.12) lib/dragonfly/image_magick/processor.rb:27:in `resize'
  dragonfly (0.9.12) lib/dragonfly/image_magick/processor.rb:87:in `thumb'
  dragonfly (0.9.12) lib/dragonfly/function_manager.rb:39:in `call'
  dragonfly (0.9.12) lib/dragonfly/function_manager.rb:39:in `block (2 levels) in call_last'
  dragonfly (0.9.12) lib/dragonfly/function_manager.rb:38:in `catch'
  dragonfly (0.9.12) lib/dragonfly/function_manager.rb:38:in `block in call_last'
  dragonfly (0.9.12) lib/dragonfly/function_manager.rb:37:in `each'
  dragonfly (0.9.12) lib/dragonfly/function_manager.rb:37:in `call_last'
  dragonfly (0.9.12) lib/dragonfly/processor.rb:5:in `process'
  dragonfly (0.9.12) lib/dragonfly/job.rb:79:in `apply'
  dragonfly (0.9.12) lib/dragonfly/job.rb:253:in `block in apply'
  dragonfly (0.9.12) lib/dragonfly/job.rb:253:in `each'
  dragonfly (0.9.12) lib/dragonfly/job.rb:253:in `apply'
  dragonfly (0.9.12) lib/dragonfly/response.rb:25:in `to_response'
  dragonfly (0.9.12) lib/dragonfly/server.rb:43:in `block in call'
  dragonfly (0.9.12) lib/dragonfly/server.rb:39:in `catch'
  dragonfly (0.9.12) lib/dragonfly/server.rb:39:in `call'
  dragonfly (0.9.12) lib/dragonfly/middleware.rb:11:in `call'
  rack-cache (1.2) lib/rack/cache/context.rb:136:in `forward'
  rack-cache (1.2) lib/rack/cache/context.rb:245:in `fetch'
  rack-cache (1.2) lib/rack/cache/context.rb:185:in `lookup'
  rack-cache (1.2) lib/rack/cache/context.rb:66:in `call!'
  rack-cache (1.2) lib/rack/cache/context.rb:51:in `call'
  rack-cache (1.2) lib/rack/cache/context.rb:136:in `forward'
  rack-cache (1.2) lib/rack/cache/context.rb:245:in `fetch'
  rack-cache (1.2) lib/rack/cache/context.rb:185:in `lookup'
  rack-cache (1.2) lib/rack/cache/context.rb:66:in `call!'
  rack-cache (1.2) lib/rack/cache/context.rb:51:in `call'
  actionpack (3.2.3) lib/action_dispatch/middleware/reloader.rb:65:in `call'
  actionpack (3.2.3) lib/action_dispatch/middleware/remote_ip.rb:31:in `call'
  actionpack (3.2.3) lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
  actionpack (3.2.3) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
  railties (3.2.3) lib/rails/rack/logger.rb:26:in `call_app'
  railties (3.2.3) lib/rails/rack/logger.rb:16:in `call'
  actionpack (3.2.3) lib/action_dispatch/middleware/request_id.rb:22:in `call'
  rack (1.4.1) lib/rack/methodoverride.rb:21:in `call'
  rack (1.4.1) lib/rack/runtime.rb:17:in `call'
  activesupport (3.2.3) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
  rack (1.4.1) lib/rack/lock.rb:15:in `call'
  actionpack (3.2.3) lib/action_dispatch/middleware/static.rb:62:in `call'
  railties (3.2.3) lib/rails/engine.rb:479:in `call'
  railties (3.2.3) lib/rails/application.rb:220:in `call'
  railties (3.2.3) lib/rails/railtie/configurable.rb:30:in `method_missing'
  passenger (3.0.11) lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
  passenger (3.0.11) lib/phusion_passenger/abstract_request_handler.rb:513:in `accept_and_process_next_request'
  passenger (3.0.11) lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
  passenger (3.0.11) lib/phusion_passenger/classic_rails/application_spawner.rb:321:in `start_request_handler'
  passenger (3.0.11) lib/phusion_passenger/classic_rails/application_spawner.rb:275:in `block in handle_spawn_application'
  passenger (3.0.11) lib/phusion_passenger/utils.rb:479:in `safe_fork'
  passenger (3.0.11) lib/phusion_passenger/classic_rails/application_spawner.rb:270:in `handle_spawn_application'
  passenger (3.0.11) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
  passenger (3.0.11) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
  passenger (3.0.11) lib/phusion_passenger/abstract_server.rb:180:in `start'
  passenger (3.0.11) lib/phusion_passenger/classic_rails/application_spawner.rb:149:in `start'
  passenger (3.0.11) lib/phusion_passenger/spawn_manager.rb:219:in `block (2 levels) in spawn_rails_application'
  passenger (3.0.11) lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
  passenger (3.0.11) lib/phusion_passenger/spawn_manager.rb:214:in `block in spawn_rails_application'
  passenger (3.0.11) lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
  <internal:prelude>:10:in `synchronize'
  passenger (3.0.11) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
  passenger (3.0.11) lib/phusion_passenger/spawn_manager.rb:213:in `spawn_rails_application'
  passenger (3.0.11) lib/phusion_passenger/spawn_manager.rb:132:in `spawn_application'
  passenger (3.0.11) lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
  passenger (3.0.11) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
  passenger (3.0.11) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
  passenger (3.0.11) helper-scripts/passenger-spawn-server:99:in `<main>'

UPDATE

我已经添加下面的代码到我的config / application.rb中文件的建议在这里 ,它帮助一些文件显示,和但我仍然无法上传通过这个堆栈跟踪的应用程序和部分文件如下所示。

配置/ application.rb中包含此

initializer 'override-image-magick-paths', :after => 'attach-refinery-images-with-
    dragonfly' do
      app=Dragonfly[:refinery_images]
      app.configure_with(:imagemagick)
      app.configure do |c|
        c.convert_command = "/usr/local/bin/convert"          # defaults to "convert"
        c.identify_command = "/usr/local/bin/identify"        # defaults to "identify"
      end
    end

堆栈跟踪

 Dragonfly::Shell::CommandFailed (Command failed (identify '/tmp/RackMultipart20120708-20096-4m1k9j') with exit status 127):
      dragonfly (0.9.12) lib/dragonfly/shell.rb:29:in `raise_shell_command_failed'
      dragonfly (0.9.12) lib/dragonfly/shell.rb:23:in `run'
      dragonfly (0.9.12) lib/dragonfly/image_magick/utils.rb:34:in `raw_identify'
      dragonfly (0.9.12) lib/dragonfly/image_magick/utils.rb:24:in `identify'
      dragonfly (0.9.12) lib/dragonfly/image_magick/analyser.rb:44:in `format'
      dragonfly (0.9.12) lib/dragonfly/function_manager.rb:39:in `call'
      dragonfly (0.9.12) lib/dragonfly/function_manager.rb:39:in `block (2 levels) in call_last'
      dragonfly (0.9.12) lib/dragonfly/function_manager.rb:38:in `catch'
      dragonfly (0.9.12) lib/dragonfly/function_manager.rb:38:in `block in call_last'
      dragonfly (0.9.12) lib/dragonfly/function_manager.rb:37:in `each'
      dragonfly (0.9.12) lib/dragonfly/function_manager.rb:37:in `call_last'
      dragonfly (0.9.12) lib/dragonfly/analyser.rb:25:in `analyse'
      dragonfly (0.9.12) lib/dragonfly/job.rb:247:in `analyse'

Answer 1:

我创建了一个符号链接从/ usr / bin中/转换 - >在/ usr / local / bin目录/转换和从/ usr / bin中/标识 - >在/ usr / local / bin目录/识别和似乎解决了我的问题。

$ cd /usr/bin
$ ln -s /usr/local/bin/convert convert
$ ln -s /usr/local/bin/identify identify 

我假设蜻蜓仍然没有拿起我的转换的位置,即使我在的config / application.rb中文件指定的鉴定。



Answer 2:

我只是重新安装ImageMagick的和它的工作。



Answer 3:

您可能必须提供完整的路径convert

config/initializers/dragonfly.rb:

app.configure do |c|
  c.convert_command = "/usr/bin/convert"
end

更改/usr/bin/convert到正确的路径convert ,您可以通过运行找出whereis convert你的VPS壳。

中更多详细信息的文档 。



Answer 4:

尝试安装炼油厂图像宝石:

Gemfile:
   gem 'refinerycms-page-images', '~>1.0.3' //refinery v1 compatible (v2 available also)

然后,在你的模型:

belongs_to :imagesizeyouwant, :class_name => 'Image'

如果你看一下图片类,你会看到用于处理图像的相当不错的设立。 您可以在炼油厂的设置页面中的管理工具添加图像尺寸。 如果你有一个自定义的发动机,只是改变:imagesizeyouwant到大小(我的是:缩略图)。

当您发布的图像,看识别命令的输出,并尝试在自己的运行。 机会是你的系统有它使用ImageMagick程序不同的参数,或者发送给它的尺寸不被理解。 尝试张贴的实际命令蜻蜓在外壳调用的输出,所以我们可以采取更好看。



文章来源: refinerycms image not loading - dragonfly error