私はCarrierWaveをFogとAmazon S3で動作させるように設定する方法を理解しようとしています。 S3では、バケット「バケット1」にフォルダ「画像」があります。アップロードは正常に動作します。たとえば、画像がhttps://s3.amazonaws.com/bucket1/images/picture/pic1.jpgという形式のものにアップロードされる可能性があります。しかし、showビューでimage_urlヘルパーを呼び出すと、私はhttps://s3.amazonaws.com/images/picture/pic1.jpgになります。私はここで何が欠けていますか?CarrierWaveとFog、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
私はそれをHostGator(dev)&EC2(prod)経由でホストしています –