Когда я нажимаю «Открыть в новой вкладке» на моих изображениях S3, он загружает изображение вместо - PullRequest
0 голосов
/ 03 июня 2018

Вот моя политика корзины:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Allow All",
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::my-bucket/*"
        },
        {
            "Sid": "Deny All Actions On All But Media and Static Unless Defined User",
            "Effect": "Deny",
            "NotPrincipal": {
                "AWS": "arn:aws:iam::**********:root"
            },
            "Action": "s3:*",
            "NotResource": [
                "arn:aws:s3:::my-bucket/media/*",
                "arn:aws:s3:::my-bucket/static/*"
            ]
        }
    ]
}

Итак, в основном у меня есть 3 папки: backup, static и media.Все объекты в моих мультимедийных и статических папках являются общедоступными.

Однако, когда я нажимаю на полный путь, например, на этот объект: https://s3.us-east-2.amazonaws.com/my-bucket/media/x12wHSRoM9szjvY (этот объект на самом деле не существует, но путь имеет тот же формат), но расширение .jpg или .png отсутствует, хотяэто изображение.Может ли это быть причиной моей проблемы, и если да, то как я могу это исправить, чтобы я мог получить доступ к необработанному объекту и не загружать его, когда нажимаю на него?

1 Ответ

0 голосов
/ 03 июня 2018

Объект, хранящийся в Amazon S3, также может иметь Метаданные .Эти метаданные определяют тип файла , который хранится, например, image/jpeg.

Когда Интерфейс командной строки AWS (CLI) загружает файл, он обычнозадает значения метаданных, поэтому он должен работать нормально.

Однако, если ваш метод загрузки не устанавливает значения метаданных, браузер не может узнать тип файла.Затем он предложит скачать файл, а не отображать его.(Расширения имени файла, такие как .png и .jpg, фактически не устанавливают тип файла.)

См .: Как добавить метаданные в объект S3?- Amazon Simple Storage Service

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...