Загрузка молча завершается с ошибкой/приостанавливается с новым драгоценным камнем Carrwave_direct при загрузке на s3

у меня небольшая проблема с загрузкой файлов на s3 с новым гемом carrierwave_direct

Я следовал инструкциям по установке и настройке Carrierwave_direct, однако, когда я пытаюсь загрузить на s3, загрузка начинается, а затем в какой-то момент приостанавливается. Есть предположения?

Также иногда я получаю это сообщение от s3:

<Error>
    <Code>InvalidPolicyDocument</Code>
    <Message>
        Invalid Policy: Invalid 'expiration' value: '2011-09-13T07:52:58+02:00'
    </Message>
    <RequestId>"some id"</RequestId>
    <HostId>
        "some host id"
    </HostId>
</Error>

Я создал файл инициализации с именем несущей волны.rb со всеми моими учетными данными от amazon s3. Я также загрузил все необходимые драгоценные камни (carrierwave_direct, туман, CarrierWave)

Ознакомьтесь с моим кодом здесь

Кто-нибудь еще смог заставить это работать

Спасибо за помощь


person Hishalv    schedule 13.09.2011    source источник


Ответы (2)


Я бы попробовал удалить эту строку из вашего конфига operatorwave_fog.rb:

config.fog_attributes = {'Cache-Control'=>'max-age=315576000'}  # optional, defaults to {}

Похоже, дата истечения срока действия вашего документа недействительна, поскольку она слишком близка к текущей дате/времени.

Кроме того, вам может понадобиться раскомментировать строку #storage :fog в вашем ImageUploader. Посмотрите, поможет ли это.

person Bramanga    schedule 13.09.2011
comment
спасибо за этот ответ, но проблема была в том, что я использовал рельсы 3.0.x. Связавшись с автором драгоценного камня, он предложил шаги в моем ответе. - person Hishalv; 15.09.2011

Автор этого драгоценного камня обнаружил, что проблема была с версиями rails 3.0.x, чтобы заставить этот драгоценный камень работать, вам нужно добавить следующую строку в config/application.rb:

config.action_controller.allow_forgery_protection = false

и удалите следующее из моего файла несущей волны.rb в config/initilizers:

config.fog_host       = 'https://#{fog_directory}.s3.amazonaws.com'

так как это будет автоматически определено каталогом тумана.

Автор также упомянул, что если вы используете рельсы 3.1.x, вам не нужно выполнять вышеупомянутые шаги. Надеюсь это поможет

person Hishalv    schedule 15.09.2011