AWSなしでPaperclipが動作していますが、S3ストレージを使用しようとすると破損します。Rails - AWSと連携していないペーパークリップ
#production.rb
config.paperclip_defaults = {
storage: :s3,
s3_region: ENV["AWS_REGION"],
s3_credentials: {
# s3_host_name: ENV["AWS_HOST_NAME"],
bucket: ENV["S3_BUCKET_NAME"],
access_key_id: ENV["AWS_ACCESS_KEY_ID"],
secret_access_key: ENV["AWS_SECRET_ACCESS_KEY"]
}
}
config.paperclip_defaults = { s3_host_name: "s3-us-west-1.amazonaws.com", }
# Added this line to fix: The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.
最後の行を追加する前に、S3エラー(The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.
)が発生しました。追加後、ファイルはS3の代わりにローカルストレージにアップロードされます。
また、これらをpaperclip.rbに別のエラーで追加しようとしました。私はすべての3行を追加すると、私はエラーを取得するRead-only file system @ dir_s_mkdir - /projects
#paperclip.rb
# Paperclip::Attachment.default_options[:url] = ':s3_domain_url'
# Paperclip::Attachment.default_options[:path] = '/:class/:attachment/:id_partition/:style/:filename'
#
# Paperclip::Attachment.default_options[:s3_host_name] = 's3-us-west-1.amazonaws.com'
Gemfile:
gem "paperclip", "~> 5.0.0"
gem 'aws-sdk', '~> 2.3'
私も
編集を支援していないようでしたrake assets:precompile RAILS_ENV=production
試した: AWS_HOST_NAME:S3を-us-west-1.amazonaws.com
AWS_REGION:us-west-1
S3_BUCKET_NAME:基礎-画像-2
AWS_ACCESS_KEY_ID:...
AWS_SECRET_ACCESS_KEY:...
私はセットアップIAMアカウントをしましたし、私たち西-1領域でバケットを作成しました。権限を追加するために必要なことはS3上にありますか?
ペーパークリップは、任意のエラーや設定はS3のためであれば何でも出て、それをローカルに保存された理由を私は理解できない...
これは昨日行われましたか? –
まだ起こっています。私はそれがS3の停止と関係しているとは思わない – Adam12344
それはショットの価値があった。 S3から受け取ったエラーメッセージを親切に追加しますか?また、最後に追加した行は、 'production.rb'の最初の設定の下に追加しましたか? –