Заголовок Host в запросах CDN-серверов к источникам
Чтобы CDN-серверы отправляли корректные запросы к источникам, настройте значение HTTP-заголовка Host
для этих запросов:
- Основное доменное имя — первое доменное имя для раздачи контента, указанное в настройках CDN-ресурса.
- Свое значение — произвольное доменное имя.
- Как у клиента — такое же значение, как и у заголовка
Host
в запросе клиента к CDN.
Значение заголовка Host
выбирается при создании ресурса. После этого настройку можно изменить вместе с другими основными настройками ресурса. Подробнее см. в инструкциях:
Как правильно настроить заголовок
Выбор правильной настройки для заголовка Host
зависит от того, какие источники вы используете в ресурсе:
Если источник — бакет, выберите вариант Свое значение
и укажите значение <имя_бакета>.storage.yandexcloud.net
(или <имя_бакета>.website.yandexcloud.net
, если бакет настроен для хостинга статического сайта).
В остальных случаях настройка зависит от того, какие запросы принимает источник.
Например, в сценарии сине-зеленого и канареечного развертывания L7-балансировщик настроен так, чтобы принимать запросы с двумя значениями заголовка
Host
. Для CDN-ресурса выбран вариантКак у клиента
.
Чтобы проверить, что источник корректно принимает запросы с выбранным значением заголовка Host
, выполните следующую команду:
curl \
--head \
--insecure \
--header "Host: <значение_заголовка>" <адрес_сервера_или_L7-балансировщика>
Если в группе есть один бакет:
- Выберите вариант
Свое значение
и укажите значение<имя_бакета>.storage.yandexcloud.net
(или<имя_бакета>.website.yandexcloud.net
, если бакет настроен для хостинга статического сайта). - Настройте остальные источники (серверы и L7-балансировщики) так, чтобы они принимали запросы с указанным значением заголовка.
Если в группе больше одного бакета, рекомендуем использовать вместо них L7-балансировщик с бакетами в виде бэкендов (см. пример настройки в сценарии сине-зеленого и канареечного развертывания).
В остальных случаях настройка зависит от того, какие запросы принимаются источниками. Чтобы проверить, что источник корректно принимает запросы с выбранным значением заголовка Host
, выполните следующую команду:
curl \
--head \
--insecure \
--header "Host: <значение_заголовка>" <адрес_сервера_или_L7-балансировщика>