Yandex Cloud
Поиск
Связаться с намиПопробовать бесплатно
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Истории успеха
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex Cloud CDN
  • Начало работы
    • Все инструкции
      • Создать ресурс
      • Копировать конфигурацию одного ресурса в другой
      • Изменить основные настройки ресурса
      • Получить информацию о ресурсе
      • Настроить кеширование ресурса
      • Настроить выгрузку логов
      • Предзагрузить файлы на CDN-серверы
      • Очистить кеш ресурса
      • Настроить заголовки запросов и ответов
      • Настроить CORS при ответах клиентам
      • Настроить HTTP-методы
      • Включить сжатие файлов
      • Включить сегментацию файлов
      • Включить экранирование источников
      • Настроить перенаправление запросов
      • Настроить следование перенаправлениям запросов
      • Настроить скрытие заголовков от источника
      • Настроить доступ по защищенному токену
      • Настроить локационные правила
      • Отключить ресурс
      • Управление метками ресурса
      • Удалить ресурс
      • Посмотреть статистику ресурса
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Логи запросов
  • Аудитные логи Audit Trails
  • История изменений
  • Решение проблем
  1. Пошаговые инструкции
  2. Ресурсы
  3. Настроить следование перенаправлениям запросов

Настройка следования перенаправлениям запросов

Статья создана
Yandex Cloud
Обновлена 16 февраля 2026 г.

Вы можете выключить следование перенаправлениям запросов с помощью API при создании или изменении CDN-ресурса.

Примечание

Опция работает только при включенной функции экранирования источников.

REST API
gRPC API

Чтобы включить опцию, добавьте блок followRedirects при использовании метода create или update для ресурса Resource:

"followRedirects": {
  "enabled": "<true_или_false>",
  "codes": [
    "<список_кодов>"
  ],
  "useCustomHost": "<true_или_false>"
}

Где:

  • enabled — включение опции:

    • true — включить опцию.
    • false — отключить опцию.
  • codes — список кодов перенаправления, по которым Cloud CDN будет следовать. Возможные значения:

    • 301 — Moved Permanently (перемещено навсегда).
    • 302 — Found (найдено).
    • 303 — See Other (смотреть другое).
    • 307 — Temporary Redirect (временное перенаправление).
    • 308 — Permanent Redirect (постоянное перенаправление).
  • useCustomHost — управление заголовком Host:

    • true — использовать заголовок Host от основного источника. Например, если источник example.com вернет редирект на ya.ru, запрос будет сделан с Host: example.com.
    • false — использовать заголовок Host от домена перенаправления. Например, если источник example.com вернет редирект на ya.ru, запрос будет сделан с Host: ya.ru.

Чтобы включить опцию, добавьте блок follow_redirects при использовании вызова ResourceService/Create или ResourceService/Update:

"follow_redirects": {
  "enabled": "<true_или_false>",
  "codes": [
    "<список_кодов>"
  ],
  "use_custom_host": "<true_или_false>"
}

Где:

  • enabled — включение опции:

    • true — включить опцию.
    • false — отключить опцию.
  • codes — список кодов перенаправления, по которым Cloud CDN будет следовать. Возможные значения:

    • 301 — Moved Permanently (перемещено навсегда).
    • 302 — Found (найдено).
    • 303 — See Other (смотреть другое).
    • 307 — Temporary Redirect (временное перенаправление).
    • 308 — Permanent Redirect (постоянное перенаправление).
  • use_custom_host — управление заголовком Host:

    • true — использовать заголовок Host от основного источника. Например, если источник example.com вернет редирект на ya.ru, запрос будет сделан с Host: example.com.
    • false — использовать заголовок Host от домена перенаправления. Например, если источник example.com вернет редирект на ya.ru, запрос будет сделан с Host: ya.ru.

ПримерПример

В этом примере создается CDN-ресурс для интернет-магазина, который использует несколько доменов. Основной источник shop.example.com может перенаправлять запросы на cdn-content.example.net для оптимизации доставки статических файлов. Здесь разрешено следование редиректам для кодов 301 и 302 с сохранением оригинального заголовка Host для корректной обработки запросов.

  1. Получите IAM-токен для аутентификации в API и запишите его в переменную:

    export IAM_TOKEN=`yc iam create-token`
    
  2. Создайте CDN-ресурс с разрешенным следованием перенаправлениям запросов:

    cURL
    gRPCurl
    curl \
      --request POST \
      --header "Authorization: Bearer $IAM_TOKEN" \
      --header "Content-Type: application/json" \
      --url 'https://cdn.api.cloud.yandex.net/cdn/v1/resources' \
      --data '{
        "folderId": "b12m81qm6abc********",
        "cname": "cdn-shop.example.com",
        "origin": {
          "originSourceParams": {
            "source": "shop.example.com",
            "meta": {
              "common": { "name": "shop.example.com" }
            }
          }
        },
        "originProtocol": "HTTPS",
        "options": {
          "followRedirects": {
            "enabled": true,
            "codes": ["301", "302"],
            "useCustomHost": true
          }
        }
      }'
    

    Результат:

    {
    "done": true,
    "metadata": {
      "@type": "type.googleapis.com/yandex.cloud.cdn.v1.CreateResourceMetadata",
      "resourceId": "bc8rt2ynimae********"
    },
    "response": {
      ...
      "followRedirects": {
        "enabled": true,
        "codes": [
        "301",
        "302"
        ],
        "useCustomHost": true
      }
      },
      ...
    "id": "bc82j4x6n6pb********",
    "description": "Create resource",
    "createdAt": "2026-02-03T09:27:51.714683Z",
    "createdBy": "aje9k8luj4qf********",
    "modifiedAt": "2026-02-03T09:27:51.714683Z"
    }
    
    grpcurl \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d '{
            "folder_id": "b12m81qm6abc********",
            "cname": "cdn-shop.example.com",
            "origin": {
              "origin_source_params": {
                "source": "shop.example.com",
                "meta": {
                  "common": { "name": "shop.example.com" }
                }
              }
            },
            "origin_protocol": "HTTPS",
            "options": {
              "follow_redirects": {
                "enabled": true,
                "codes": ["301", "302"],
                "use_custom_host": true
              }
            }
          }' \
      cdn.api.cloud.yandex.net:443 \
      yandex.cloud.cdn.v1.ResourceService/Create
    

    Результат:

    {
      "id": "bc87tcdmptuy********",
      "description": "Create resource",
      "createdAt": "2026-02-03T09:09:04.967980Z",
      "createdBy": "aje8m8lur3qf********",
      "modifiedAt": "2026-02-03T09:09:04.967980Z",
      "done": true,
      "metadata": {"@type":"type.googleapis.com/yandex.cloud.cdn.v1.CreateResourceMetadata","resourceId":"bc8rskqqnd23********"},
      "response": {"@type":"type.googleapis.com/yandex.cloud.cdn.v1.Resource","active":true,"cname":"altaraskin.online","createdAt":"2026-02-03T09:09:04.808428Z","folderId":"b1g652qoimb4********","id":"bc8rskqqnd23********","options":{ ... "followRedirects":{"enabled":true,"codes":["301","302"],"useCustomHost":true}}, ... }
    }
    
  3. Включите экранирование источников:

    Консоль управления
    gRPCurl
    1. В консоли управления выберите каталог, в котором расположен ресурс.
    2. Перейдите в сервис Cloud CDN.
    3. Нажмите на имя необходимого ресурса.
    4. Перейдите на вкладку Экранирование источников.
    5. В правом верхнем углу включите опцию экранирования источников.
    6. В окне Настройки экранирования в поле Локация выберите необходимую локацию.
    7. Нажмите кнопку Включить.

    После включения статус экранирования изменится с Not activated на Active.

    grpcurl \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/cdn/v1/shielding_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d '{
            "resource_id": "bc8rskqqnd23********",
            "location_id": "1"
          }' \
      cdn.api.cloud.yandex.net:443 \
      yandex.cloud.cdn.v1.ShieldingService/Activate
    

    Результат:

    {
      "id": "bc8yiwltf3hg********",
      "description": "Activate Origin Shielding",
      "createdAt": "2026-02-03T09:13:43.226165Z",
      "createdBy": "aje9k8luj4qf********",
      "modifiedAt": "2026-02-03T09:13:43.226165Z",
      "done": true,
      "metadata": {"@type":"type.googleapis.com/yandex.cloud.cdn.v1.ActivateShieldingMetadata","resourceId":"bc8rskqqnd23********"},
      "response": {"@type":"type.googleapis.com/yandex.cloud.cdn.v1.ShieldingDetails","city":"Moscow","country":"Russia","dataCenter":"msk","locationId":"1"}
    }
    

Была ли статья полезна?

Предыдущая
Настроить перенаправление запросов
Следующая
Настроить скрытие заголовков от источника
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»