Amazon WS S3: Otrzymuję ten komunikat o błędzie: „Zasobnik, do którego próbujesz uzyskać dostęp, musi być adresowany przy użyciu określonego punktu końcowego”. [duplikować]

Jan 04 2021

jak mogę zaadresować zasobnik przy użyciu prawidłowego punktu końcowego? Używam Django do tworzenia mojej aplikacji.

Widziałem rozwiązanie tego problemu w innym języku i nie mogłem nic zrozumieć, czy istnieje rozwiązanie dla Pythona?

settings.py

STATIC_URL = '/static/'

MEDIA_ROOT =  os.path.join(BASE_DIR, 'static') 
MEDIA_URL = '/media/'

AWS_ACCESS_KEY_ID = '****************'
AWS_SECRET_ACCESS_KEY = '*******************'
AWS_STORAGE_BUCKET_NAME = '*************+'

AWS_S3_FILE_OVERWRITE = False
AWS_DEFAULT_ACL = None
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

Adres URL obrazów zaczyna się następująco: https://s3.amazonaws.com/nostalg.ia/media/(...)

Kiedy powinien zaczynać się od miejsca docelowego obrazu, jak widzę we wszystkich samouczkach.

Odpowiedzi

AsriBadlah Jan 04 2021 at 03:50

Aby wysyłać żądania, musisz użyć regionalnego punktu końcowego. Ogólna składnia regionalnego punktu końcowego jest następująca:

protocol://service-code.region-code.amazonaws.com

Na przykład:

https://mybucket.s3-ap-southeast-2.amazonaws.com/