Итак, я попытался настроить CDN для статических активов клиентов, используя S3 и CloudFront, однако мы получаем ошибки CORS при попытке извлечь изображения, хранящиеся в корзине S3 в JS (для этого мы используем jsPDF) , который затем использует изображение для создания файла .pdf). Мы используем пользовательское доменное имя (assets.website.com) и созданный AWS SSL-сертификат для обслуживания активов из безопасного источника.
Запутанная часть заключается в том, что конфигурация иногда работает - иногда ресурсы будут загружаться правильно, когда в режиме инкогнито или в приватном режиме в Chrome / Safari, но работают очень редко, если это не так. Я попытался перезапустить сервер, на котором находится сайт, и запустил аннулирование для каждого файла в S3 / CloudFront после того, как я обновил конфигурацию CORS и последние настройки поведения CloudFront, однако проблема сохраняется.
Интересно, что добавление любого параметра запроса в URL пройдет проверку CORS.
Я проверял это с https://test -cors.org , похоже, все еще сталкивается с проблемами.
Любая помощь в получении этой работы будет высоко ценится, так как ничто из того, что я нашел до сих пор, не решило проблему!
Конфигурация CORS:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>HEAD</AllowedMethod>
<MaxAgeSeconds>0</MaxAgeSeconds>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
Ссылка на конфигурацию поведения CloudFront