Хранилище
S3. Создать ресурс, подключить хранилище к CDN и запросить с него контент
Настройка CDN-ресурса
1. Перейдите в раздел CDN и нажмите Создать CDN-ресурс.
2. Выберите тип ускорения «Ускорить и защитить только статические файлы». Этот пункт будет пропущен, если для вашего аккаунта не активирован сервис DNS.
3. Заполните поля «Источник» и «Персональный домен».
-
Источник. Укажите путь до вашего хранилища, откуда CDN будет забирать контент. Выберите один из вариантов:
а) Укажите Hostname хранилища, чтобы CDN мог забирать файлы из всех бакетов. Подробнее о том, как узнать Hostname вашего хранилища, описано в статье «Запросить файлы. Запросить контент с S3-хранилища напрямую».
Пример: s-dt2.cloud.edgecore.ru
б) Укажите путь до бакета в вашем хранилище, чтобы CDN забирал файлы из конкретного бакета. Такая схема повышает уровень защиты вашего CDN, так как название вашего репозитория скрывается.
Пример: mybucket.s-dt2.cloud.edgecore.ru
-
Персональный домен. Укажите персональный домен, который будет использоваться для доставки контента через CDN. Об особенностях настройки персонального домена можно прочесть в статье «Задать доменное имя для доставки контента через CDN».
4. Завершите создание CDN-ресурса. Затем перейдите в его настройки:
1) В качестве протокола взаимодействия с источником выберите HTTP или HTTPS. S3-хранилища поддерживают оба протокола.
2) Поле «Кастомный заголовок Host» заполняется автоматически: подставляется значение источника контента. Не меняйте его.
Важно. Если вы изменяете настройки ресурса, для которого ранее использовался другой источник, измените значение опции Заголовок Host на значение выбранного вами нового источника — на путь до хранилища или на путь до бакета в хранилище.
Запрос контента с CDN-сервера
В зависимости от указанного источника используйте одну из схем для запроса загруженных файлов.
1) Если вы указали Hostname хранилища
<персональный домен для CDN>/<название_бакета>/<название файла>
Например, в хранилище создан bucket mybucket, в котором лежит файл picture.png:
/mybucket/picture.png
Персональный домен для CDN:
cdn.mycompany.com
URL для запроса файла с CDN:
http://cdn.mycompany.com/mybucket/picture.png
2) Если вы указали конкретный бакет
<персональный домен для CDN>/<папка>/<название файла>
Например, в бакете есть папка folder, в которой лежит файл picture.png:
/folder/picture.png
Персональный домен для CDN:
cdn.mycompany.com
URL для запроса файла с CDN:
http://cdn.mycompany.com/folder/picture.png
Если файл был добавлен в корень бакета, а не в папку, URL будет выглядеть так:
http://cdn.mycompany.com/picture.png
Важно. По умолчанию созданный бакет и все находящиеся в нём файлы — непубличные. Чтобы сделать файлы публичными, в личном кабинете настройте доступ к бакету по HTTP или следуйте инструкции в статье по настройке ACL и policy.