【发布时间】:2015-03-06 06:24:41
【问题描述】:
我刚刚从回形针迁移到carrierwave并成功上传到S3以在我的机器上本地工作,但是在将Rails应用程序部署到我的服务器(使用Ubuntu,Passenger with nginx)之后,它是一个任务工作),当我尝试上传图像时,它会尝试将其保存到 public/uploads/... 这会出现权限被拒绝错误,我到处寻找并搜索以找出它为什么不起作用,并且有一无所获。
我的上传文件:
class AvatarUploader < CarrierWave::Uploader::Base
include CarrierWave::Compatibility::Paperclip
storage :fog
def store_dir
"/uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
end
雾.rb
CarrierWave.configure do |config|
config.storage = :fog
config.fog_credentials = {
provider: 'AWS', # required
aws_access_key_id: '*******', # required
aws_secret_access_key: '********', # required
region: 'ap-southeast-2', # optional, defaults to 'us-east-1'
}
config.fog_directory = 'publicrant' # required
# config.fog_public = false
config.fog_attributes = { 'Cache-Control' => "max-age=#{365.day.to_i}" } # optional, defaults to {}
end
【问题讨论】:
标签: ruby-on-rails nginx amazon-s3 carrierwave fog