回形针 Rails Gem 没有给予适当的 URL

Paperclip Rails Gem Not giving proper URL

我设置回形针来处理我的 PDF 附件。目前,当我转到控制台并搜索 Model.certificate.url 时,我会得到一个 URL:

//bucketname-staging.s3.amazonaws.com/policies/certificates/000/001/163/original/certificate_bc4525d9-8d41-4635-8f26-ba24b0b69037.pdf?1493755437

但是,我无法访问此 link,因为没有 HTTP/HTTPS 开头与之关联。如果我使用 Model.certificate.expiring_url,我会得到完整的 link 和 HTTP/HTTPs。

这是为什么?

这是我在 production.rb

中的选项
config.paperclip_defaults = {
    url: ":s3_domain_url",
    path: "/:class/:attachment/:id_partition/:style/:filename",
    storage: :s3,
    s3_credentials: {
      bucket: ENV.fetch('S3_BUCKET_NAME'),
      access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
      secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'),
      s3_region: ENV.fetch('AWS_REGION'),
    }
  }

您的配置应包括 s3_protocol 选项,在 docs:

中提到
config.paperclip_defaults = {
  url: ":s3_domain_url",
  path: "/:class/:attachment/:id_partition/:style/:filename",
  storage: :s3,
  s3_protocol: 'http',
  s3_credentials: {
    bucket: ENV.fetch('S3_BUCKET_NAME'),
    access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
    secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'),
    s3_region: ENV.fetch('AWS_REGION'),
  }
}