我想弄清楚如何設置CarrierWave與霧和亞馬遜S3工作。在S3上,我有一個桶,「bucket1」和文件夾「images」。上傳工作正常。例如,圖片可能會被上傳到https://s3.amazonaws.com/bucket1/images/picture/pic1.jpg的形式。然而,在show show中,當我調用image_url幫手時,我得到了https://s3.amazonaws.com/images/picture/pic1.jpg。我在這裏錯過了什麼?CarrierWave和霧,S3存儲桶和store_dir配置
#config/initializers/carrierwave.rb
CarrierWave.configure do |config|
config.fog_credentials = {
:provider => 'AWS',
:aws_access_key_id => 'aws_key',
:aws_secret_access_key => 'aws_secret'
}
config.fog_directory = 'bucket1'
config.fog_host = 'https://s3.amazonaws.com'
config.fog_public = true
config.fog_attributes = {'Cache-Control'=>'max-age=315576000'}
end
#app/uploader/image_uploader.rb
def store_dir
"images/#{model.class.to_s.underscore}"
end
#app/views/pictures/show.html.erb
<%= image_tag @picture.image_url if @picture.image? %>
你在Heroku託管呢? – noob 2012-03-05 02:56:24
我通過HostGator(dev)&EC2(prod)託管它自己 – 2012-03-05 08:34:47