Создание правила CDN-ресурса
Для CDN-ресурса можно создать правило для:
- любых файлов. Например, для файлов с определённым названием и расширением;
- видеосегментов — файлов с расширением .ts;
- плейлистов — файлов с расширением .m3u8.
В результате настройки CDN-ресурса (а также настройки кэширования, HTTP-заголовков и методов, контента) будут применяться ко всем файлам. А к файлам, указанным в правиле, применятся настройки из правила.
Для одного CDN-ресурса можно создать максимум 5 правил. Если нужно создать больше правил, обратитесь в тех. поддержку T1 Облако.
Последовательность правил в списке правил CDN-ресурса влияет на их приоритет. Первое правило списка имеет наибольший приоритет. Если для файла подходит несколько правил, то сработает то, что находится выше в списке. Если изменить последовательность правил, то изменится и их приоритет.
Создание правила
Чтобы создать правило:
- Выберите проект, в котором подключен Cloud CDN.
- В главном меню портала перейдите в раздел Ресурсы → Cloud CDN.
- На вкладке Ресурсы нажмите на кнопку в строке с ресурсом, для которого нужно создать правило.
- На вкладке Правила нажмите на кнопку и выберите пункт Создать пустое правило.
- Заполните поля:
Создать правило:
- Название — название правила, отражающее его суть;
- Правило — регулярное выражение, начинающееся с ^/ или /. Можно задать правило для:
- имени и/или расширения файлов. Например, выражение /.*\.(jpg|jpeg|png)$/, которому соответствует URL https://mydomain.com/photo1.jpeg, применимо к файлам с расширениями .jpg, .jpeg и .png независимо от их расположения на сайте;
расположения файлов. Например, выражение ^/video/.*, которому соответствует URL https://mydomain.com/video/movie.mp4, применимо к файлам, расположенным в папке /video/;
имени, расширения и расположения файлов. Например, выражение ^/video/file[0-9]+\.avi, которому соответствует URL https://mydomain.com/video/file123.avi, применимо к файлам с именами file0, file19, file123 и т.п., расширением .avi и расположенным в папке /video/.
Важно
Если для CDN-ресурса добавлено несколько правил, а их шаблоны пересекаются, тогда для файлов, попадающих под эти шаблоны, применится верхнее правило из списка на вкладке Правила. Например, для CDN-ресурса создано два правила с шаблонами /folder/.* (первое правило в списке) и /folder/image.jpg (второе правило в списке). Тогда на файл /folder/image.jpg распространится первое правило.
- Включить правило — активируйте переключатель, если нужно включить правило сразу после его сохранения.
Источник:
- Протокол взаимодействия с источником — протокол, который будет использоваться для обращения к источнику контента:
- Наследовать с ресурса — протокол взаимодействия с источником, указанный в настройках CDN-ресурса;
- HTTP — протокол передачи сообщений HTTP;
- HTTPS — протокол передачи зашифрованных сообщений HTTPS;
- Как у клиента — протокол взаимодействия с источником, такой же как у клиента;
- Группа источников — источник контента. Выберите созданную группу источников или пункт Наследовать из настроек ресурса, чтобы использовать группу, как у CDN-ресурса.
Заголовок Host — доменное имя, указываемое в заголовке Host запроса к серверу-источнику контента:
- Своё значение — произвольное доменное имя. Укажите Значение заголовка, которое будет использоваться при запросе контента у источника;
- Как у клиента — использовать значение заголовка Host, которое прислал клиент.
Заголовки запроса к источнику — собственные HTTP-заголовки, которые CDN-серверы добавят в запрос к серверу-источнику. Нажмите на кнопку + Добавить заголовок и заполните поля:
- Название — название заголовка;
- Значение — значение заголовка.
Заголовки ответа клиенту — собственные HTTP-заголовки, которые CDN-серверы добавят в ответ клиенту. Нажмите на кнопку + Добавить заголовок и заполните поля:
- Название — название заголовка;
- Значение — значение заголовка. Если значений несколько, укажите их через запятую;
- Всегда добавлять заголовок в ответ от CDN независимо от кода ответа — активируйте переключатель, если нужно добавить заголовок в ответ от CDN-сервера независимо от кода ответа. Если переключатель неактивирован, заголовок будет добавляться только в ответы с кодами 200, 201, 204, 206, 301, 302, 303, 304, 307, 308.
CORS при ответе клиенту — разрешение кросс-доменных запросов (CORS) при ответе клиенту:
- Заголовок Access-Control-Allow-Origin — активируйте переключатель, если нужно добавить заголовок Access-Control-Allow-Origin в ответ клиенту;
- Значение:
- *, для всех доменов — отображение контента разрешается всем доменам;
- $http_origin, для всех доменов — отображение контента разрешается всем доменам. В заголовке ответа передаётся домен, с которого пришёл запрос;
- $http_origin, для следующих доменов — отображение контента разрешается указанным доменам. Нажмите на кнопку + Добавить доменное имя и в поле Название укажите домен, для которого разрешается отображение контента. При необходимости укажите несколько доменов;
- Всегда добавлять заголовок в ответ от CDN независимо от кода ответа — активируйте переключатель, если нужно добавить заголовок в ответ от CDN-сервера независимо от кода ответа. Если переключатель неактивирован, заголовок будет добавляться только в ответы с кодами 200, 201, 204, 206, 301, 302, 303, 304, 307, 308.
Методы запросов от клиентов:
- Разрешённые методы — разрешённые HTTP-методы для запросов контента:
- GET — запрос на получение контента;
- HEAD — запрос заголовка, содержащего метаинформацию о контенте;
- POST — запрос на отправку контента, не требующего создания новой записи или обновления существующей;
- PUT — запрос на замену контента данными из запроса;
- PATCH — запрос на внесение частичных изменений в контент;
- DELETE — запрос на удаление указанного контента;
- OPTIONS — запрос на получение доступных параметров HTTP-соединения.
CDN — параметры кэширования в сети CDN-серверов:
- Кэширование в CDN — если переключатель неактивирован, то для файлов, указанных в правиле, применяются настройки со вкладки Кэширование. Если переключатель активирован, то для файлов применяются параметры:
- Настройки — тип кэширования CDN:
- Как у источника — CDN-серверы при запросе контента с сервера-источника кэшируют контент на время, указанное в заголовке Cache-Control ответа от сервера-источника. Если заголовок Cache-Control отсутствует, CDN-серверы используют время хранения, указанное в поле Время жизни кэша по умолчанию, для кодов ответов 200, 201, 204, 206, 301, 302, 303, 304, 307, 308. Ответы с другими кодами не кэшируются. Если требуется хранить кэш для запросов с другими кодами ответа или переопределить время хранения кэша для кодов ответов 200, 201, 204, 206, 301, 302, 303, 304, 307, 308, выберите Свои настройки;
- Свои настройки — позволяют задать свои параметры кэширования. Нажмите на кнопку + Добавить HTTP-код ответа и заполните поля:
- HTTP-код ответа — код состояния ответа HTTP;
Время жизни кэша для кода с ответами — время хранения кэша для запросов с выбранным HTTP-кодом ответа. Если для одного HTTP-кода ответа указано разное время в полях Время жизни кэша по умолчанию и Время жизни кэша для кода с ответами, то будет учитываться только Время жизни кэша для кода с ответами;
Время жизни кэша по умолчанию — время хранения кэша для запросов с кодами ответов 200, 206, 301, 302. Коды ответов 4xx и 5xx кэшироваться не будут.
Важно
Независимо от настроек контент удаляется из кэша CDN-серверов через 36 часов, если он не запрашивается конечными пользователями.
- Настройки — тип кэширования CDN:
Браузер:- Кэширование в браузере — активируйте переключатель для кэширования файлов в браузере пользователя;
- Время жизни кэша по умолчанию — время хранения кэша в браузере пользователя для запросов с кодами ответа 200, 201, 204, 206, 301, 302, 303, 304, 307, 308. Ответы с остальными кодами не будут кэшироваться в браузере пользователя.
Дополнительно:
- Игнорировать cookie — если переключатель активирован, то ответы сервера-источника с HTTP-заголовком Set-Cookie будут кэшироваться.
Если переключатель неактивирован, то ответы сервера-источника с HTTP-заголовком Set-Cookie не будут кэшироваться. В результате каждый новый запрос пользователя перенаправляется на сервер-источник, а не отдаётся из кэша. Это снижает процент кэшированного трафика и создаёт нагрузку на сервер-источник; - Игнорировать query-параметры — настройка определяет, как будут кэшироваться ответы сервера-источника на запросы с разными query-параметрами после знака ? в URL-адресе. Если переключатель неактивирован, то CDN-сервер кэширует один файл с разными параметрами запросов как уникальные файлы. В результате каждый новый запрос пользователя перенаправляется на сервер-источник, а не отдаётся из кэша. Это снижает процент кэшированного трафика и создаёт нагрузку на сервер-источник.
Если переключатель активирован, то такие файлы кэшируются как один:- Все — файлы с разными параметрами запросов всегда кэшируются как один файл. Например, ответы на запросы http://cdn.example.com/photo.jpeg?id=6&color=blue и
http://cdn.example.com/photo.jpeg?id=1&color=green будут кэшироваться как один файл; - Все, кроме — в правиле имеются исключения. Чтобы указать их, нажмите на кнопку + Добавить параметр и укажите Ключ и его Значение. Например, если добавить ключ color со значением blue, то ответы на запросы http://cdn.example.com/photo.jpeg?id=6&color=blue и http://cdn.example.com/photo.jpeg?id=1&color=blue будут кэшироваться отдельно;
- Только — правило применимо только для указанных параметров. Нажмите на кнопку + Добавить параметр и укажите Ключ и его Значение. Например, если добавить ключ color со значением blue, то ответы на запросы http://cdn.example.com/photo.jpeg?id=6&color=blue и http://cdn.example.com/photo.jpeg?id=1&color=blue будут кэшироваться как один файл.
- Все — файлы с разными параметрами запросов всегда кэшируются как один файл. Например, ответы на запросы http://cdn.example.com/photo.jpeg?id=6&color=blue и
Контент — при необходимости выберите параметр для обработки контента. Можно выбрать только 1 параметр:
- Gzip сжатие — активируйте переключатель, чтобы контент сжимался на CDN-сервере по алгоритму Gzip. Подробнее см. в разделе Контент;
- Сегментация больших файлов — активируйте переключатель, чтобы разрешить деление больших файлов на части для оптимизации нагрузки. Подробнее см. в разделе Контент;
- Сжатие на источнике — активируйте переключатель, чтобы контент сжимался на сервере-источнике по алгоритму Gzip.
- Нажмите на кнопку Сохранить.
Созданное правило отобразится на портале:
Правило ресурса можно отредактировать, включить, выключить, удалить, а также изменить приоритет правила.
Создание правила для видеосегментов
Правила применяются для кэширования потоковой трансляции видео, передаваемого по протоколу HLS. Протокол HLS работает по принципу разбиения цельного потока видео на небольшие фрагменты (чанки). Чанки поочерёдно скачиваются, и видеоплеер формирует из них трансляцию для воспроизведения. Поток может быть непрерывным.
У CDN-ресурса может быть только 1 правило для видеосегментов. Если для CDN-ресурса уже создано правило для видеосегментов, его можно отредактировать.
Чтобы создать правило для видеосегментов:
- Выберите проект, в котором подключен Cloud CDN.
- В главном меню портала перейдите в раздел Ресурсы → Cloud CDN.
- На вкладке Ресурсы нажмите на кнопку в строке с ресурсом, для которого нужно создать правило.
- На вкладке Правила нажмите на кнопку и выберите пункт Правило для видеосегментов (.ts).
- В открывшемся окне заполните поля:
Протокол взаимодействия с источником — протокол, который будет использоваться для обращения к источнику контента:
- Наследовать с ресурса — протокол взаимодействия с источником, указанный в настройках CDN-ресурса;
- HTTP — протокол передачи сообщений HTTP;
- HTTPS — протокол передачи зашифрованных сообщений HTTPS;
- Как у клиента — протокол взаимодействия с источником, такой же как у клиента.
Группа источников — источник контента. Выберите созданную группу источников или пункт Наследовать из настроек ресурса, чтобы использовать группу, как у CDN-ресурса.
Кэширование в CDN — если переключатель неактивирован, то для файлов, указанных в правиле, применяются настройки с вкладки Кэширование. Если переключатель активирован, то для файлов применяются параметры:
- Настройки — тип кэширования CDN:
- Как у источника — CDN-серверы при запросе контента с сервера-источника кэшируют контент на время, указанное в заголовке Cache-Control ответа от сервера-источника. Если заголовок Cache-Control отсутствует, CDN-серверы используют время хранения, указанное в поле Время жизни кэша по умолчанию, для кодов ответов 200, 201, 204, 206, 301, 302, 303, 304, 307, 308. Ответы с другими кодами не кэшируются. Если требуется хранить кэш для запросов с другими кодами ответа или переопределить время хранения кэша для кодов ответов 200, 201, 204, 206, 301, 302, 303, 304, 307, 308, выберите Свои настройки;
- Свои настройки — позволяют задать свои параметры кэширования. Нажмите на кнопку + Добавить HTTP-код ответа и заполните поля:
- HTTP-код ответа — код состояния ответа HTTP;
Время жизни кэша для кода с ответами — время хранения кэша для запросов с выбранным HTTP-кодом ответа. Если для одного HTTP-кода ответа указано разное время в полях Время жизни кэша по умолчанию и Время жизни кэша для кода с ответами, то будет учитываться только Время жизни кэша для кода с ответами;
Время жизни кэша по умолчанию — время хранения кэша для запросов с кодами ответов 200, 206, 301, 302. Коды ответов 4xx и 5xx кэшироваться не будут.
Важно
Независимо от настроек контент удаляется из кэша CDN-серверов через 36 часов, если он не запрашивается конечными пользователями.
- Нажмите на кнопку Создать.
Правило ресурса можно отредактировать, включить, выключить, удалить, а также изменить приоритет правила.
Создание правила для плейлистов
Плейлист представляет собой список видеосегментов (чанков — файлов в формате .ts) для воспроизведения. При подключении пользователя к просмотру видеотрансляции HLS видеоплеер запрашивает плейлист (в формате m3u8), содержащий ссылки на видеосегменты, и загружает их через CDN-серверы. Затем поочерёдно скачиваются чанки, и видеоплеер формирует из них трансляцию для воспроизведения.
У CDN-ресурса может быть только 1 правило для плейлистов. Если для CDN-ресурса уже создано правило для плейлистов, его можно отредактировать.
Чтобы создать правило для плейлистов:
- Выберите проект, в котором подключен Cloud CDN.
- В главном меню портала перейдите в раздел Ресурсы → Cloud CDN.
- На вкладке Ресурсы нажмите на кнопку в строке с ресурсом, для которого нужно создать правило.
- На вкладке Правила нажмите на кнопку и выберите пункт Правило для плейлистов (.m3u8).
- В открывшемся окне заполните поля:
Протокол взаимодействия с источником — протокол, который будет использоваться для обращения к источнику контента:
- Наследовать с ресурса — протокол взаимодействия с источником, указанный в настройках CDN-ресурса;
- HTTP — протокол передачи сообщений HTTP;
- HTTPS — протокол передачи зашифрованных сообщений HTTPS;
- Как у клиента — протокол взаимодействия с источником, такой же как у клиента.
Группа источников — источник контента. Выберите созданную группу источников или пункт Наследовать из настроек ресурса, чтобы использовать группу, как у CDN-ресурса.
Кэширование в CDN — если переключатель неактивирован, то для файлов, указанных в правиле, применяются настройки со вкладки Кэширование. Если переключатель активирован, то для файлов применяются параметры:- Настройки — тип кэширования CDN:
- Как у источника — CDN-серверы при запросе контента с сервера-источника кэшируют контент на время, указанное в заголовке Cache-Control ответа от сервера-источника. Если заголовок Cache-Control отсутствует, CDN-серверы используют время хранения, указанное в поле Время жизни кэша по умолчанию, для кодов ответов 200, 201, 204, 206, 301, 302, 303, 304, 307, 308. Ответы с другими кодами не кэшируются. Если требуется хранить кэш для запросов с другими кодами ответа или переопределить время хранения кэша для кодов ответов 200, 201, 204, 206, 301, 302, 303, 304, 307, 308, выберите Свои настройки;
- Свои настройки — позволяют задать свои параметры кэширования. Нажмите на кнопку + Добавить HTTP-код ответа и заполните поля:
- HTTP-код ответа — код состояния ответа HTTP;
Время жизни кэша для кода с ответами — время хранения кэша для запросов с выбранным HTTP-кодом ответа. Если для одного HTTP-кода ответа указано разное время в полях Время жизни кэша по умолчанию и Время жизни кэша для кода с ответами, то будет учитываться только Время жизни кэша для кода с ответами;
Время жизни кэша по умолчанию — время хранения кэша для запросов с кодами ответов 200, 206, 301, 302. Коды ответов 4xx и 5xx кэшироваться не будут.
Важно
Независимо от настроек контент удаляется из кэша CDN-серверов через 36 часов, если он не запрашивается конечными пользователями.
- Нажмите на кнопку Создать.
Правило ресурса можно отредактировать, включить, выключить, удалить, а также изменить приоритет правила.
Мы ответили на ваш вопрос?