S3ResponseError:301永久移动 - Django

时间:2015-11-16 20:58:33

标签: django amazon-s3

我对Amazon S3有一个很大的问题。我正在研究Django应用程序,我想在S3上存储文件: 我的设置是:

AWS_STORAGE_BUCKET_NAME = 'tfjm2-inscriptions'
AWS_ACCESS_KEY_ID = 'id'
AWS_SECRET_ACCESS_KEY = 'key'
AWS_S3_CUSTOM_DOMAIN = '%s.s3-eu-west-1.amazonaws.com' % AWS_STORAGE_BUCKET_NAME

我收到此错误:S3ResponseError:301永久移动

互联网上的一些相同的问题说,这是因为它是一个非美国的桶,我尝试使用美国标准的桶,但它得到401 Forbidden错误......

我不知道该怎么做。

请帮帮我。

谢谢

3 个答案:

答案 0 :(得分:1)

你可以这样做: AWS_S3_CUSTOM_DOMAIN = '%s.s3.amazonaws.com' % AWS_STORAGE_BUCKET_NAME

答案 1 :(得分:0)

在终端运行' nano~ / .boto' 如果有一些配置尝试注释或重命名文件并再次连接。 (它帮助到我) http://boto.cloudhackers.com/en/latest/boto_config_tut.html 有boto配置文件目录。看一个一个地清理它们,它将默认配置。也可以在.bash_profile,.bash_source中配置... 我想你必须只允许KEY-SECRET

答案 2 :(得分:0)

将代码更改为:

AWS_STORAGE_BUCKET_NAME = 'tfjm2-inscriptions'
AWS_ACCESS_KEY_ID = 'id'
AWS_SECRET_ACCESS_KEY = 'key'
AWS_S3_CUSTOM_DOMAIN = '%s.s3.amazonaws.com' % AWS_STORAGE_BUCKET_NAME
AWS_S3_REGION_NAME = 'us-east-2' ##### Use the region name where your bucket is created

AWS允许您以优化措施访问同一区域中的创建和访问存储桶,因此,如果您在“ us-west-2”中创建存储桶,则尝试从“访问”中访问存储桶会得到301不同的地区(非洲,欧洲,甚至美国东部)。

如果从区域之外请求存储桶,则应指定区域。