django-хранилища, использующие boto - не могут загружать mp3, но могут загружать изображения. Кроме того, страдая от проблем с HTTP 307

Я использую бэкэнд boto (2.2.1) для django-хранилищ (1.1 .4) для загрузки файлов в корзину S3. Он отлично работает с изображениями, но когда я пытаюсь загрузить файлы фильмов (small mov, small avi) или mp3, я получаю ошибку Broken pipe.

Это странно.

Копаясь в трассировке Django, я вижу следующее исключение:

boto.https_connection.InvalidCertificateException

Какой вид соответствует моему опыту использования Cyberduck для непосредственной проверки ведра: иногда он жалуется, что у меня есть несоответствие между сертификат для *. s3.amazonaws.com и домена *. s3-external-3.amazonaws.com

Действительно, ведение журнала показывает, что я использую HTTP 307 временное перенаправление.Возможно, AWS отправляет одни типы контента одним способом, а другие - другим, но boto / something не успевает за этим? Загрузка фильмов, кажется, попадает в S3 дважды, тогда как изображения попадают в него один раз, так что вполне может быть, что boto справляется со штрафом 307 (а закрытые билеты на поддержку 307 в boto существуют пару лет назад), поэтому он мог хорошо, и что-то еще происходит.

Но что? Я прошел путь от приятно продуктивного дня до головокружительного, и это очень расстраивает.

Есть какие-нибудь предложения по поводу того, что может произойти и / или что попытаться обойти это?

(Обратите внимание, что это не удается с бэкэндом boto S3 или простым бэкэндом S3 - просто бото дает мне то, что выглядит вроде более конкретная ошибка)

6
задан Steve Jalim 2 February 2012 в 20:07
поделиться