从另一个项目渲染图像导致404(未找到)错误

时间:2016-12-27 10:50:48

标签: ruby-on-rails ruby unix carrierwave

您好我必须将项目分开, images_project site_project site_project 应仅在本地计算机的开发环境中呈现来自 images_project 的图像。在生产中它由SDN完成。

我从'praser_path'中的秘密分享 images_project 路径。

我在 site_project

中添加了资产配置的图片路径
# config/initializers/assets.rb

if Rails.env.development? && Rails.application.secrets.parser_path
   # share parser images for admin
   Rails.application.config.assets.paths.push(
     File.join( Rails.application.secrets.parser_path, 'public', 'uploads')
   )
  Rails.application.config.assets.precompile += %w( advert_image/** )
end

我的模型在本地机器中查找图像

# model/image.rb

def file_url(size=nil)
  if Rails.env.development? && Rails.application.secrets.parser_path
    File.join( Rails.application.secrets.parser_path, 'public', file.url(size))
  else
    REMOTE_HOST + file.url(size)
  end
end

但是当一个带有我的图像的页面渲染它时会为所有图像处理404并出现此错误:

  

http://localhost:3000/Users/nick/CODE/work/biz/parser/public/uploads/advert_image/images/374/micro_3117094366.jpg   无法加载资源:服务器响应状态为404   (未找到)

我知道以下链接不好而且图片已经存在 file:///Users/nick/CODE/work/biz/parser/public/uploads/advert_image/images/374/micro_3117094366.jpg 如何绕过服务器并直接从本地计算机渲染图像?

0 个答案:

没有答案