We use the backendo boto (2.2.1) for django-storages (1.1.4) to upload files to the S3 bucket. It works great for images, but when I try to upload movie files (small mov, small avi) or mp3, I get a Broken pipe error.
This is strange.
Delving into a Django trace, I see the following exception:
boto.https_connection.InvalidCertificateException
How can I use Cyberduck to inspect the bucket directly: sometimes it complains that I get a mismatch between the certificate for *.s3.amazonaws.com
and the domain *.s3-external-3.amazonaws.com
In fact, logging shows that I am serving HTTP 307 temporary redirects. Is it possible that AWS sends some types of content one way and the other, but boto / something can't handle it? It seems that downloading movies seems to hit S3 twice, while images hit once, so itโs quite possible that boto is handling a 307 fine (and closed tickets for 307 support in boto are a couple of years old), so it could be fine, and something else.
But what? I left a pleasant, productive day in my head, and it is very frustrating.
Any suggestions on what might be and / or what to try to get around this?
(Note that this fails with boto S3 beta or with a simple S3 backend - it's just that boto gives me what looks like a more specific error)
source share