Я использую бэкэнд 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 - просто бото дает мне то, что выглядит вроде более конкретная ошибка)