我使用boto(2.2.1)后端用于django-storages(1.1.4)将文件上传到S3存储桶.它适用于图像,但是当我尝试上传电影文件(小型电影,小型AVI)或mp3时,我收到了一个Broken管道错误.
这很怪异.
深入研究Django回溯,我看到以下异常:
boto.https_connection.InvalidCertificateException
Run Code Online (Sandbox Code Playgroud)
哪种方式符合我使用Cyberduck直接检查存储桶的经验:有时它抱怨我在证书*.s3.amazonaws.com和域名之间存在不匹配*.s3-external-3.amazonaws.com
实际上,存储桶日志记录显示我正在为HTTP 307临时重定向服务.也许是AWS以一种方式发送一些内容类型而另一种方式发送内容类型,但boto/something无法完全跟上它?电影的上传似乎确实击中了S3两次,而图像击中它一次,所以很可能是boto正在处理307罚款(并且boto的307支持的已关闭门票是几年),所以它可以好吧,别的什么都搞定了.
但是什么?我已经从一个愉快的工作日变成了一个头脑,而且非常令人沮丧.
有关可能出现的问题和/或尝试解决此问题的任何建议?
(请注意,这与boto S3后端或简单的S3后端失败 - 只是boto给了我看起来更具体的错误)