Paperclip附加来自:url参数的字符串以请求URL,而不是将请求定向到指定的CloudFront URL

时间:2015-11-07 00:13:54

标签: ruby-on-rails path paperclip amazon-cloudfront

我尝试通过CloudFront为我的Rails应用程序提供使用Paperclip上传的图像。我已阅读了很多帖子,发现以下配置应该有效:

has_attached_file :content, {
  :styles => {
    :medium=> "300x300>",
    :thumb=> "100x100#",
    :medium_square=> "700x500#",
    :facebook=> "1200x630>",
    :large=> "1920x"
  },
  :convert_options=> {
    :all=> '-strip -interlace Plane'
  },
  :default_url=> "/images/:style/missing.png",
  :path=> ":attachment/:id/:style.:extension"
  :url=> ':s3_alias_url',
  :s3_host_alias=> ENV['CLOUDFRONT_URL'],
  :s3_credentials=> {
    :bucket=> ENV['FOG_DIRECTORY'],
    :access_key_id=> ENV['AWS_ACCESS_KEY_ID'],
    :secret_access_key=> ENV['AWS_SECRET_ACCESS_KEY']
  }
}

但是,它不是将请求发送到CloudFront URL,而是在请求路径中使用':s3_alias_url'作为字符串,如下所示:

http://application.com/pages/:asset_host?1446851994

我也尝试使用':asset_host'作为选项,但结果相同 - 它被视为字符串。

0 个答案:

没有答案