在本地,一切都像预期的那样工作,我使用:file存储,它正在工作。
但是我的部署版本使用:fog存储,并且它不工作。每次我尝试在那里上传图片时,我都会遇到以下错误:
Permission denied - /mnt/foo/releases/20130607190757/public/uploads我的上传程序配置如下:
class ImageUploader < CarrierWave::Uploader::Base
# Include RMagick or MiniMagick support:
# include CarrierWave::RMagick
include CarrierWave::MiniMagick
# Override the directory where uploaded files will be stored.
# This is a sensible default for uploaders that are meant to be mounted:
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end我的初始化器定义如下:
CarrierWave.configure do |config|
unless Rails.env.test?
config.fog_credentials = {
:provider => 'AWS',
:aws_access_key_id => ENV['AWS_ACCESS_KEY_ID'],
:aws_secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
}
config.fog_directory = Rails.configuration.fog_directory
config.fog_public = false
end
if Rails.env.test? or Rails.env.cucumber?
config.enable_processing = false
config.storage = :file
# We may want to changes storage to 'file' after initial testing
elsif Rails.env.development?
config.storage = :file
elsif Rails.env.staging? or Rails.env.pilot? or Rails.env.production?
config.storage = :fog
end
end有人知道是什么导致了这个错误吗?它看起来像是存储为一个文件,因为它显示了整个文件的路径。
问候
发布于 2013-06-14 08:38:42
我发现问题在于我没有在橡皮部署过程中创建文件夹。创建文件夹后,我能够完成我的部署。
发布于 2013-06-08 03:41:48
尝试将权限扩展到此文件夹
https://stackoverflow.com/questions/16991677
复制相似问题