【问题标题】:Images not rendered with secure connection to Amazon S3未通过与 Amazon S3 的安全连接呈现图像
【发布时间】:2016-01-11 09:21:08
【问题描述】:

我正在创建一个 PDF,其中包含存储在 Amazon S3 上的图像。 我的 Rails 应用使用 https,所以 S3 镜像的 URL 也是 https,在 production.rb 中配置:

config.paperclip_defaults = {
  :storage => :s3,
  :s3_protocol => :https
}

问题是 S3 存储桶有一个安全存储桶策略,它仅在图像来自我的网络域时显示图像。这在视图中显示图像时效果很好,因为引用者是我列入白名单的网络域。

创建 PDF 时的问题是 wicked_pdf 尝试检索图像,但 S3 看不到它来自我的网络域并返回 403 Forbidden。那么我该怎么做才能解决这个问题呢?

【问题讨论】:

  • 您是否可以使用 https 从 S3 查看图像?
  • 不,这就是我要问的问题 :-)
  • 您能否添加一些可通过 http 访问但故障转移到 https 的图像的链接?
  • 存储桶策略仅限于某些域名,因此您恐怕无法打开该链接。

标签: ruby-on-rails amazon-s3 wicked-pdf


【解决方案1】:

由于您已使用 wicked-pdf 标记了您的问题,我认为这就是您正在使用的。看起来这是一个 known problem 带有该 gem 的某些版本。链接的问题提供了几个解决方案。

【讨论】:

  • 谢谢,但我已经使用了那个 gem 的版本,没有结果。
  • 所以 http 图像在浏览器和 PDF 中加载,但 https 图像在浏览器中加载但不在 PDF 中?在这种情况下,您似乎应该发布用于生成 PDF 的代码以及 gem 的版本(来自 Gemfile.lock)。
【解决方案2】:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-21
    • 1970-01-01
    • 2018-12-19
    • 1970-01-01
    相关资源
    最近更新 更多