[英]Images upload successfully to aws s3 bucket but do not display on my site
我將Rails與Heroku和AWS S3一起使用,以部署通過教程創建的pinterest這樣的網站。 用戶可以成功將圖像上傳到我的s3存儲桶。 問題是,上載的圖像應該顯示在索引中(並顯示),但不顯示。
我創建了一個存儲桶策略,因此啟用了“ getobject”方法。
{
"Id": "Policy1445210052484",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1445209989872",
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::wyattsbucket/*",
"Principal": "*"
}
]
}
這是我網站上發布的屏幕截圖:
Heroku沒有收到任何錯誤,因此我相信問題可能出在S3存儲桶中還是我的Rails環境中。 這是我的第一篇文章,請原諒業余格式化,如果您有任何想法請告訴我!
提前致謝。
= form_tag pins_path
views / pins / index.html.haml
#pins.transitions-enabled
- @pins.each do |pin|
.box.panel.panel-default
= link_to (image_tag pin.image.url), pin
.panel-body
%h2= link_to pin.title, pin
%p.user
Submitted by
= pin.user.email
型號/pin.rb
class Pin < ActiveRecord::Base
acts_as_votable
belongs_to :user
has_attached_file :image, styles: { medium: "500x500>" }
validates_attachment_content_type :image, content_type: /\Aimage\/.*\Z/
end
我猜您的問題出在您的保單上。 如果將URL放在瀏覽器中,可以查看圖像嗎?
您也可以嘗試以下政策。 我對S3策略不太熟悉,但這對我來說很有效。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::wyattsbucket/*"
}
]
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.