我正在使用aws s3存储照片,并且我收到了Chrome警告,说网站上的某些内容不安全。在开发控制台中,我看到:
The page at https://domain.herokuapp.com/users/1/ displayed insecure content
from http://s3.amazonaws.com/domain/photos/user_thumbnail/casing-earphones.jpg?1365720318.
亚马逊链接不是https如何修复我的应用访问整个存储桶?
按照此处的设置说明操作:https://devcenter.heroku.com/articles/paperclip-s3
我有以下代码我想我需要在某处以某种方式添加URL选项:(config / environment / production.rb)
config.paperclip_defaults = {
:storage => :s3,
:s3_credentials => {
:bucket => ENV['AWS_BUCKET'],
:access_key_id => ENV['AWS_ACCESS_KEY_ID'],
:secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
}
}
答案 0 :(得分:5)
我需要添加这一行:
:s3_protocol => 'https'
设置说明中未提及,但可在此处找到paperclip s3配置选项:http://rdoc.info/github/thoughtbot/paperclip/Paperclip/Storage/S3
答案 1 :(得分:1)
您可以将s添加到http URL并使其正常工作。如果可行,则修复链接以引用https而不是http。
如果这不起作用,您可能需要联系亚马逊客户服务。只要您有来自https连接的http页面的链接,您和您的用户就会收到该消息。但更重要的是,您可以向用户开放XSS,CSRF和MitM攻击。