Хранилища Django используют неверные URL-адреса для статических файлов s3

Я использую хранилища Django для размещения моих статических файлов (css, js, изображений) на s3. Когда я загружаю свою веб-страницу, django продолжает указывать на неверный URL-адрес моего общедоступного сегмента s3. Например, он продолжает возвращать https://mysite.amazonaws.com/assets/images/cat.png, несмотря на то, что правильный общедоступный URL-адрес файла равен https://mysite.s3-ap-southeast-2.amazonaws.com/assets/images/cat.png.

settings.py

DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
AWS_ACCESS_KEY_ID = os.environ.get('aws_access_key_id')
AWS_SECRET_ACCESS_KEY = os.environ.get('aws_secret_key')
AWS_STORAGE_BUCKET_NAME = 'mysite'
AWS_DEFAULT_ACL = "private"
AWS_S3_SIGNATURE_VERSION = "s3v4"
AWS_S3_REGION_NAME = 'ap-southeast-2'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]
STATIC_URL = 'https://mysite.s3-ap-southeast-2.amazonaws.com/static/'
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

person chaudim    schedule 07.03.2021    source источник


Ответы (1)


Попробуйте установить собственный домен s3.

AWS_S3_CUSTOM_DOMAIN = 'mysite.s3-ap-southeast-2.amazonaws.com'
person Håken Lid    schedule 07.03.2021
comment
Это сработало, спасибо! - person chaudim; 08.03.2021