railsアプリでS3を使って画像を保存しようと思うのですが、ローカルで画像を投稿しようとするとエラーになります

###該当すると思うファイル
carrierwave.rb
require 'carrierwave/storage/abstract' require 'carrierwave/storage/file' require 'carrierwave/storage/fog' CarrierWave.configure do |config| if Rails.env.development? || Rails.env.test? elsif Rails.env.production? config.storage = :fog config.fog_provider = 'fog/aws' config.fog_credentials = { provider: 'AWS', aws_access_key_id: ENV['AWS_ACCESS_KEY_ID2'], aws_secret_access_key: ENV['AWS_SECRET_ACCESS_KEY2'], region: 'ap-northeast-1' } config.fog_directory = 'rails-baseball-app' config.asset_host = 'https://s3-ap-northeast-1.amazonaws.com/rails-baseball-app' end end
###試したこと
調べてみるとAWSアクセスキーが関係してるエラーかと思い確認してみました
aws_access_key_id: とaws_secret_access_keyが違っていたので、バケットポルシーに関係するIAMユーザーのアクセスキーを環境変数で適用させてみましたが、エラーが変わりませんでした
原因はアクセスキー以外に何かあるのでしょうか
よろしくお願いします
vim 関係なさそうなのでタグから削除した方が良いですね。
S3側に アクセス可能なIPアドレスの制限をかけていませんか?
本来なら'AWS' is not a recognized provider と出るだと思いますが出ていない、ということはどこかで文法的な間違いをして正しい引数がCarrierWaveのgemに渡されていないのでは?、というように思いました。
ただ、現状だと上の方々がおっしゃるようにS3の方の設定の問題等の可能性等色々と考える事があると思いますし、明確な答えを提示させていただくのが難しいかもしれません。
Stacktraceをもう少し(出来るなら全文)と、CarrierWaveに関係するコードで他に作成したものがあればご提示していただいた方が良いかと思います。
あなたの回答
tips
プレビュー