2017-09-18 2 views
0

여기에 내가 django-botodjagno 모델에서 S3에 이미지를 저장하는 동안 계속 400 오류 응답을 얻으시겠습니까?

# S3 configuration 
AWS_ACCESS_KEY_ID = os.environ.get("AWSAccessKeyId") 
AWS_SECRET_ACCESS_KEY = os.environ.get("AWSSecretKey") 
AWS_STORAGE_BUCKET_NAME = os.environ.get("S3BucketName") 
S3DIRECT_REGION = os.environ.get("S3Region") 

# S3 configuration for boto 
BOTO_S3_BUCKET = os.environ.get("S3BucketName") 
BOTO_BUCKET_LOCATION = os.environ.get("S3Region") 
# AWS_S3_FORCE_HTTP_URL = True 
# AWS_QUERYSTRING_AUTH = False 
AWS_S3_HOST = 's3.ap-south-1.amazonaws.com' 

에 대해 가지고있는 설정입니다 그리고 내가 S3에서 오류없이 400 응답 코드가 계속

from django_boto.s3.storage import S3Storage 

s3 = S3Storage() 

class userProfileModel(models.Model): 

    """User profile model. """ 
    user  = models.OneToOneField(User, on_delete=models.CASCADE,related_name='profile') 
    profile_pic = models.ImageField(storage=s3,null=True,blank=True) 

을 다음과 같이 내가 정의하는 모델입니다. 내가 찾을 수 있었던 유일한 예외는 같은 음에 head_bucket에서/lib 디렉토리/python2.7/사이트 패키지/BOTO/S3/connection.py

ENV, 라인 (556)

에있다 , 나는 또한 동일한 자격 증명을 사용하여 django-s3direct을 사용하고 있으며 모든 문제없이 정상적으로 작동합니다. 이 일로 내가 어디가 잘못 됐어?

답변

0

설정에서 지정하는 액세스 키 사용자가 실제로 S3 버킷에 업로드 할 수있는 퍼미션을 가지고 있지 않을 가능성이 있습니까? 이를 확인하려면 S3 버킷 정책을 확인하십시오.

환경 변수가 실제로 설정되고 올바르게 설정되어 있습니까? 이를 확인하려면 설정 파일에서 print을 확인하십시오.

+0

이미 사용 권한 및 환경 변수에서 확인되었습니다. 그들은 모두 제대로 작동하고 있습니다 :) – georoot