Невозможно загрузить файлы в S3 из Django на Amazon Lightsail, несмотря на то, что локально все работает нормально с теми же учетными данными и политикой

Я столкнулся с проблемой, когда я могу успешно загружать файлы в мое ведро S3 локально, но сталкиваюсь с проблемами при попытке загрузки с моего сервера. Вот подробная информация:

Django Settings

Settings.py (соответствующие части):

STATIC_URL = "https://my-cdn.s3.amazonaws.com/static/"
STATICFILES_STORAGE = env("STATICFILES_STORAGE")

AWS_ACCESS_KEY_ID = env("AWS_ACCESS_KEY_ID")
AWS_SECRET_ACCESS_KEY = env("AWS_SECRET_ACCESS_KEY")
AWS_STORAGE_BUCKET_NAME = env("AWS_STORAGE_BUCKET_NAME")
AWS_S3_REGION_NAME = env("AWS_S3_REGION_NAME")
DEFAULT_FILE_STORAGE = env("DEFAULT_FILE_STORAGE")
MEDIA_URL = env("MEDIA_URL")

S3 Policy:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "PublicReadGetObject",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::my-cdn/*"
        },
        {
            "Sid": "AllowPutObject",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::id:user/my-cdn"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::my-cdn/*"
        }
    ]
}

Выпуск:

  • Локальная среда: Загрузка файлов в ведро S3 работает отлично.
  • Amazon Lightsail Server: Загрузка не удается (никаких логов), но учетные данные и политика остаются прежними.
Вернуться на верх