2015-12-14 4 views
0

Это моя скрепка конфигурация внутри config/environments/production.rbAWS :: S3 :: Ошибки :: InvalidAccessKeyId + Скрепка + Rails

# Paperclip 
config.paperclip_defaults = { 
    storage: :s3, 
    s3_credentials: { bucket: Rails.application.secrets.aws_bucket, 
        access_key_id: Rails.application.secrets.aws_access_key_id, 
        secret_access_key: Rails.application.secrets.aws_secret_access_key }, 
    s3_host_name: Rails.application.secrets.aws_host_name, 
    url: ':s3_domain_url' } 
end 

Он отлично работает, когда я нахожусь на localhost с учетными данными АМСА.

переключается на мой сервер в производстве, используйте тот же конфиг и те же учетные данные, и я получаю:

[AWS S3 403 0.188842 1 retries] put_object(:acl=>:public_read,:bucket_name=>"<bucket-name>",:content_length=>87882,:content_type=>"image/jpeg",:data=>Paperclip::UploadedFileAdapter: profile_picture_square.jpg,:key=>"assets/users/1/original.jpg") AWS::S3::Errors::InvalidAccessKeyId The AWS Access Key Id you provided does not exist in our records. 

Где <bucket-name> на самом деле имя моего ведра.

Почему это происходит?

+0

Вы можете добавить свой файл development.rb? –

+0

@NelsonPatricioJimenez can'd добавил его здесь, потому что он слишком длинный. Но это рельсы по умолчанию плюс конфигурация электронной почты и эта конфигурация paperclip выше. – jbernardo

+1

Убедитесь, что ключ доступа находится в разделе секреты secret.yml. Также распечатайте ключ доступа в журналах прямо перед загрузкой изображения. Или просто распечатайте его на странице где-нибудь. Я уверен, что ключ отличается (или, может быть, даже не установлен). – Jeiwan

ответ

0

Попробуйте использовать файл env?

config.paperclip_defaults = { 
    :storage => :s3, 
    :s3_credentials => { 
    :bucket => ENV['S3_BUCKET_NAME'], 
    :access_key_id => ENV['AWS_ACCESS_KEY_ID'], 
    :secret_access_key => ENV['AWS_SECRET_ACCESS_KEY'] 
    } 
} 
+0

Я открыл консоль рельсов на сервере и проверил, были ли загружены значения (запустив Rails.application.secrets. ), и они кажутся прекрасными. – jbernardo

+0

Хотя, я попытался использовать env vars сейчас, и я все равно получаю ту же ошибку – jbernardo

Смежные вопросы