在我的 Rails 4 应用程序中,我使用 paperclip gem 允许用户上传图像。
图像存储在AWS S3上。
这是我在 config/environments/Production.rb
中的配置:
config.paperclip_defaults = {
:storage => :s3,
:s3_credentials => {
:bucket => ENV['S3_BUCKET_NAME'],
:access_key_id => ENV['AWS_ACCESS_KEY_ID'],
:secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
}
}
在我实现 SSL 证书之前,这一切都运行得很好。
现在我的应用(正在生产中)已设置为 HTTPS,我在控制台中收到以下错误:
Mixed Content: The page at 'https://www.domain.com/' was loaded over HTTPS, but requested an insecure image 'http://s3.amazonaws.com/app/model/images/000/000/003/small_thumb/Profile_Picture.png?1448899439'. This content should also be served over HTTPS.
这不会“破坏”应用程序,但我想让事情正常运行。
我该如何解决这个问题?
最佳答案
通过将此选项添加到 Paperclip 选项哈希中,告诉 Paperclip 生成 HTTPS URL:
:s3_protocol => :https
关于ruby-on-rails - rails 4 个 AWS S3 : "This content should also be served over HTTPS.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34644842/