#amazon-web-services #amazon-s3 #cors #cloudflare #same-origin-policy
#amazon-web-services #amazon-s3 #cors #cloudflare #политика того же происхождения
Вопрос:
У меня есть файл JS в S3, который получает Cloudflare CDN, прежде чем он, наконец, будет отправлен на передний план. Теперь у некоторых конечных пользователей ошибка CORS. Итак, я хочу добавить Access-Control-Allow-Origin: *
в этот файл. Насколько мне известно, cloudflare автоматически передает заголовки, которые он получает, поэтому я пытаюсь найти способ добавить заголовок, пока он выбирается из S3.
https://docs.aws.amazon.com/AmazonS3/latest/userguide/cors.html#how-do-i-enable-cors
Нашел это руководство, но я не совсем уверен, как использовать в нем JSON.
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET"
],
"AllowedOrigins": [
"http://mydoman.com"
],
"MaxAgeSeconds": 3000
}
]
Правильно ли это выглядит? Кто-нибудь когда-нибудь добавлял подобные пользовательские заголовки при обслуживании файлов из s3? Может кто-нибудь предложить правильный JSON? Или что-то еще, что необходимо для этого?
Комментарии:
1. Вы пробовали использовать приведенный выше JSON?
2. Пока нет, этот файл передается многим клиентам. Изначально я пытаюсь создать новый файл и попытаться использовать его, но пока безуспешно, поэтому я подумал, может быть, кто-то уже сталкивался с этой проблемой и может что-то предложить, может быть, я чего-то не хватает. Я думаю, что есть способ сделать это и с помощью Cloudflare workers, но это кажется более сложным.
Ответ №1:
Предполагая, что другие части настройки верны, вы хотите:
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET"
],
"AllowedOrigins": [
"*"
],
"MaxAgeSeconds": 3000
}
]
В конечном итоге это приведет к созданию Access-Control-Allow-Origin: *
заголовка при добавлении на вкладку «Разрешения» свойств корзины S3 в поле CORS в самом низу.
Комментарии:
1. Это не работает. Заголовки с изображениями s3 не отправляются.