【发布时间】:2015-05-13 21:00:33
【问题描述】:
所以,我正在尝试使用 Fog 将图像从 Rails API 上传到 S3。
每当我尝试上传图片时,我都会收到以下信息:
Excon::Errors::Forbidden (Expected(200) <=> Actual(403 Forbidden)
(...)
All access to this object has been disabled
它正在开发中,但是一旦我切换到生产,我就会收到上述错误。我正在使用我创建的用户的密钥,该用户设置了完整的管理权限。
我的carrierwave.rb: 需要“载波”
CarrierWave.configure do |config|
config.fog_credentials = {
:provider => "AWS",
:region => "us-east-1",
:aws_access_key_id => ENV['AWS_ACCESS_KEY_ID'],
:aws_secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
}
if Rails.env.production?
config.cache_dir = "#{Rails.root}/tmp/uploads"
end
config.fog_directory = ENV['AWS_BUCKET']
config.fog_public = false
end
有什么想法吗?提前致谢! :)
【问题讨论】:
-
调查问题所需的完整回溯。
-
您应该检查 ENV 是否具有您在生产中需要的所有参数。从哪里获得 ENV?
-
@denys28,愚蠢的错误。忘记在 Heroku 上添加区域 ENV。现在一切正常。谢谢!
标签: ruby-on-rails ruby-on-rails-4 amazon-s3 carrierwave fog