403 ошибки с Amazon S3 при загрузке статических файлов

#python #django #amazon-web-services #amazon-s3 #python-django-storages

Вопрос:

Я создаю приложение Django и пытаюсь использовать корзину Amazon S3 для хранения статических файлов, таких как JavaScript и CSS.
Я успешно загрузил статические файлы, и я вижу это через консоль Amazon S3. Но я получаю 403 ошибки, когда мой сайт пытается загрузить статические файлы из моего хранилища.
Поэтому я проверил свои разрешения и убедился, что корзина Amazon S3 доступна для всех.

Но я все равно получаю 403 ошибки в инспекторе.

я не думаю, что мой settings.py это связано с этим, но я покажу вам свою settings.py на случай, если это имеет отношение к проблеме.

 # AWS S3 Static Files Configuration
AWS_ACCESS_KEY_ID = config('AWS_ACCESS_KEY_ID')
AWS_SECRET_ACCESS_KEY = config('AWS_SECRET_ACCESS_KEY')
AWS_STORAGE_BUCKET_NAME = config('AWS_STORAGE_BUCKET_NAME')
AWS_S3_CUSTOM_DOMAIN = '%s.s3.amazonaws.com' % AWS_STORAGE_BUCKET_NAME
AWS_S3_OBJECT_PARAMETERS = {
    'CacheControl': 'max-age=86400',
}
AWS_S3_FILE_OVERWRITE = False
AWS_DEFAULT_ACL = 'public-read'
AWS_LOCATION = 'static'

STATICFILES_DIRS = [
    'atgs_project/static',
]
STATIC_URL = 'https://%s/%s/' % (AWS_S3_CUSTOM_DOMAIN, AWS_LOCATION)
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
AWS_S3_REGION_NAME = 'us-west-2'
AWS_S3_USE_SSL = False
AWS_S3_ENDPOINT_URL = "https://my-ecommerce-app-bucket.s3.amazonaws.com/"
 

Заранее спасибо.

Комментарии:

1. Я действительно надеюсь, что имя ведра в AWS_S3_ENDPOINT_URL нем не является настоящим именем ведра, особенно если вы открыли ведро миру. Кроме того, когда вы говорите «когда мой сайт пытается загрузить статические файлы из моей корзины S3», вы имеете в виду, что он всегда должен загружать данные из корзины S3 или только один раз ?

2. Нет. Имя ведра в AWS_S3_ENDPOINT_URL нем ненастоящее. И он всегда должен загружать данные из корзины S3, а не только один раз.