# CDN — полный текст документации > Полный текст раздела «CDN» документации Timeweb Cloud в markdown. Каждая статья начинается с заголовка первого уровня и ссылки на свою каноническую страницу. Индекс: https://timeweb.cloud/docs/cdn/llms.txt Статей: 15 Последнее обновление: 2026-07-02 # CDN Source: https://timeweb.cloud/docs/cdn?utm_source=llms_txt&utm_medium=ai CDN (Content Delivery Network, сеть доставки контента) — это распределенная сеть серверов, которая ускоряет загрузку сайтов и приложений за счет кэширования контента и его доставки с ближайшего к пользователю узла. Когда пользователь запрашивает файл, CDN проверяет, есть ли он в кэше, и если да — сразу отдает его пользователю с минимальной задержкой. Если файла нет, узел CDN запрашивает его у сервера-источника, сохраняет копию в кэше и затем использует ее для последующих запросов. Серверы CDN-сети размещены по всему миру: в России и СНГ, Европе, Азии, на Ближнем Востоке, в Северной Америке, Австралии и Океании. ## Когда нужен CDN CDN стоит использовать, если: - В проекте много статического контента: изображений, видео, JavaScript и CSS. - Вы работаете с крупными файлами и медиа. CDN ускоряет доставку тяжелого контента и повышает стабильность загрузки. - Аудитория распределена по разным регионам. Пользователи получают данные с ближайших узлов, что снижает задержки. - Нагрузка высокая или нестабильная. CDN берет на себя значительную часть трафика и снижает число обращений к серверу-источнику. - Вы раздаете данные из S3. CDN кэширует объекты и уменьшает количество прямых запросов к хранилищу. ## Стоимость сервиса Стоимость сервиса складывается из: - 1 ₽ в месяц за каждый CDN-ресурс; - 0,6 ₽ за 1 ГБ исходящего трафика по каждому ресурсу. Если CDN-ресурс неактивен в течение 7 дней, он [автоматически приостанавливается](https://timeweb.cloud/docs/cdn/deactivate#avtomaticheskaya-priostanovka). Неактивным считается ресурс, к которому за это время не поступило ни одного HTTP-запроса. ## Регионы присутствия | **Россия и СНГ** | Владивосток, Екатеринбург, Иркутск, Казань, Калининград, Краснодар, Красноярск, Махачкала, Москва, Нижний Новгород, Новосибирск, Норильск, Омск, Ростов-на-Дону, Самара, Санкт-Петербург, Симферополь, Ставрополь, Тюмень, Уфа, Хабаровск, Химки, Чита, Акколь, Алматы, Астана, Ашхабад, Бишкек, Ереван, Караганда, Кишинев, Костанай, Минск, Ташкент, Тбилиси | | --- | --- | | **Европа** | Амстердам, Брюссель, Варшава, Кишинев, Лондон, Мадрид, Милан, Париж, Стокгольм, Франкфурт-на-Майне | | **Азия** | Бандар-Сери-Бегаван, Бангкок, Бангалор, Вьентян, Гонконг, Дели, Куала-Лумпур, Макао, Медан, Пекин, Пномпень, Сеул, Токио, Тяньцзинь, Улан Батор, Хошимин, Ченнаи | | **Ближний Восток** | Абу-Даби, Багдад, Доха, Тегеран, Эль-Кувейт | | **Северная Америка** | Атланта, Ашберн, Бостон, Денвер, Лос-Анджелес, Майами, Нью-Йорк, Сан-Хосе, Сиэтл, Чикаго | | **Австралия и Океания** | Гамильтон, Мельбурн, Сидней, Сува | | **Африка** | Джибути | # Создание CDN-ресурса Source: https://timeweb.cloud/docs/cdn/create?utm_source=llms_txt&utm_medium=ai Чтобы создать новый CDN-ресурс: 1. Перейдите в раздел «CDN» и кликните «Добавить». 2. Укажите источник контента — откуда CDN будет забирать и кэшировать данные. Эту настройку можно изменить в дальнейшем. Источником контента может быть: - - **S3-бакет** Выберите нужный бакет из выпадающего списка. Если вам нужно подключить бакет, созданный на другом аккаунте или вне Timeweb Cloud, используйте опцию «Домен». - - **Домен** Выберите домен из существующих на аккаунте или введите нужный домен вручную. Если обращаться к домену необходимо по HTTP, отключите опцию «Использовать защищенное HTTPS-соединение для источника». Если вы подключаете приватный S3-бакет, после создания ресурса нужно настроить [AWS-авторизацию](https://timeweb.cloud/docs/cdn/settings/aws-auth). - - **IP-адрес** Выберите IP-адрес из существующих на аккаунте или введите нужный IP вручную. Если обращаться к адресу необходимо по HTTP, отключите опцию «Использовать защищенное HTTPS-соединение для источника». 3. Укажите удобное имя ресурса и комментарий при необходимости и выберите, в какой проект нужно добавить ресурс. 4. Нажмите «Заказать». Ресурс будет создан и появится в разделе «CDN». Теперь вы можете [настроить его](https://timeweb.cloud/docs/cdn/settings) необходимым образом. В качестве домена раздачи будет использоваться технический домен, который подключается к ресурсу автоматически при его создании. Найти его можно на Дашборде созданного ресурса, а добавить собственные домены — [в настройках](https://timeweb.cloud/docs/cdn/settings/origin-and-domains#nastrojka-domenov-razdachi). # Настройки ресурса Source: https://timeweb.cloud/docs/cdn/settings?utm_source=llms_txt&utm_medium=ai В панели управления вы можете гибко управлять CDN-настройками созданного ресурса. > [!NOTE] > Для применения изменений может потребоваться 10-20 минут. - [Источник контента и домены раздачи](https://timeweb.cloud/docs/cdn/settings/origin-and-domains) - [AWS-авторизация](https://timeweb.cloud/docs/cdn/settings/aws-auth) - [Кэширование](https://timeweb.cloud/docs/cdn/settings/cache) - [Безопасность](https://timeweb.cloud/docs/cdn/settings/security) - [Производительность](https://timeweb.cloud/docs/cdn/settings/performance) - [HTTP-заголовки](https://timeweb.cloud/docs/cdn/settings/http-headers) # Источник контента и домены раздачи Source: https://timeweb.cloud/docs/cdn/settings/origin-and-domains?utm_source=llms_txt&utm_medium=ai В настройках CDN-ресурса указываются источник контента и домены раздачи. Источник контента — это место, откуда CDN получает оригинальные файлы. В качестве источника можно использовать S3-бакет, домен или IP-адрес сервера. Домены раздачи — это адреса, через которые пользователи получают контент из CDN. По умолчанию для каждого CDN-ресурса создается технический домен. Также можно добавить собственные поддомены, например `cdn.example.com`. ## Как работает CDN-ресурс Рассмотрим пример: сайт `example.com` использует статические файлы — изображения, CSS и JS-скрипты. Эти файлы хранятся в S3-бакете `f6ec80b3-site-content`. Ссылка на бакет выглядит так: ```shell https://s3.twcstorage.ru/f6ec80b3-site-content ``` Например, изображение `image.png` будет доступно по адресу: ```shell https://s3.twcstorage.ru/f6ec80b3-site-content/image.png ``` При настройке CDN этот бакет выбирается как источник контента. После создания CDN-ресурса для него создается технический домен, например `uuxmvazs51.cdn.twcstorage.ru`. При использовании CDN ссылка на файл будет выглядеть так: ```shell https://uuxmvazs51.cdn.twcstorage.ru/image.png ``` Технический домен или собственный домен раздачи можно указать в CMS сайта для загрузки статических файлов через CDN. > [!NOTE] > Источник контента — это место, где хранятся оригинальные файлы. Домен раздачи — адрес, через который пользователи получают эти файлы через CDN. Работа CDN выглядит так: 1. Пользователь открывает страницу сайта `example.com`. 2. CMS формирует ссылки на статические файлы через домен раздачи CDN. 3. Браузер пользователя запрашивает файл, например `uuxmvazs51.cdn.twcstorage.ru/image.png`. 4. CDN принимает запрос и проверяет, есть ли файл в кеше. 5. Если файл уже есть в кеше, CDN сразу отдает его пользователю. 6. Если файла в кеше нет, CDN обращается к источнику контента — S3-бакету, например `f6ec80b3-site-content`. 7. S3-бакет отдает оригинальный файл, после чего CDN кэширует его и возвращает пользователю. ## Настройка источника контента и доменов раздачи Чтобы изменить источник контента или домены раздачи, откройте общие настройки CDN-ресурса: 1. Перейдите в раздел «CDN». 2. Кликните на нужный ресурс. 3. На вкладке «Управление» нажмите «Настроить» в блоке «Источник и домены раздачи». 4. Измените источник контента, домены раздачи или оба параметра. 5. Нажмите «Сохранить». ![Scr 20260513 Nejt](https://content.timeweb.com/assets/cc800673-1efb-4676-8e96-0c076ab30b58.png?width=2788&height=1958) ### Настройка источника контента В блоке «Источник контента» выберите тип источника. В качестве источника можно использовать: - **S3-бакет**. Можно выбрать бакет, созданный на вашем аккаунте в панели управления. Если бакет приватный, после сохранения изменений [настройте AWS-авторизацию](https://timeweb.cloud/docs/cdn/settings/aws-auth). - **Домен**. Можно выбрать домен из существующих на аккаунте или ввести нужный домен вручную. Этот вариант также используется для подключения стороннего S3-бакета по домену. - **IP-адрес**. Можно выбрать один из существующих сервисов на аккаунте или ввести нужный IP вручную. Если обращаться к источнику необходимо по HTTP, отключите опцию «Использовать HTTPS-соединение для источника». Если опция включена, CDN будет обращаться к источнику по HTTPS. ### Настройка доменов раздачи По умолчанию в качестве домена раздачи используется технический домен, который автоматически привязывается к CDN-ресурсу при его создании. Технический домен нельзя изменить или удалить. Вы также можете добавить собственные домены раздачи. В качестве домена раздачи можно использовать только поддомен, например `cdn.example.com`. Всего у CDN-ресурса может быть до трех доменов раздачи, включая технический. В блоке «Домены раздачи» добавьте или удалите домены. Технический домен удалить невозможно. Если добавили собственный домен раздачи, скопируйте технический домен CDN-ресурса — он потребуется для настройки CNAME. ### Настройка CNAME для домена раздачи Чтобы связать собственный домен раздачи с CDN-ресурсом, настройте для него CNAME-запись на стороне держателя NS-серверов. Если домен делегирован на наши NS-серверы, CNAME обновится автоматически. В этом случае ручная настройка DNS не требуется, но все другие CNAME-записи для выбранного поддомена будут удалены. > [!NOTE] > Автоматическое обновление CNAME сработает только при выборе существующего поддомена из списка. Создать поддомен можно [по этой инструкции](https://timeweb.cloud/docs/domains/subdomains#sozdanie-poddomena). Например, если домен раздачи — `cdn.example.com`, а технический домен CDN-ресурса — `uuxmvazs51.cdn.twcstorage.ru`, CNAME-запись должна выглядеть так: ```bash cdn.example.com CNAME uuxmvazs51.cdn.twcstorage.ru ``` Для настройки: 1. Перейдите в настройки DNS у провайдера, на чьих NS-серверах обслуживается домен. 2. Создайте CNAME-запись для поддомена раздачи. 3. В качестве значения укажите технический домен CDN-ресурса. 4. Сохраните изменения. Обновление DNS может занять от 15–30 минут до 24 часов. ## Возможные ошибки при настройке #### Избегайте создания петли при настройке CNAME Не указывайте домен раздачи в качестве CNAME для домена источника контента. В этом случае CDN будет запрашивать данные у источника, а источник — перенаправлять запрос обратно в CDN. Это приведет к зацикливанию запросов. При обнаружении такой конфигурации CDN-ресурс автоматически деактивируется. Чтобы восстановить его работу, исправьте петлю и повторно запустите CDN в панели управления. # AWS-авторизация Source: https://timeweb.cloud/docs/cdn/settings/aws-auth?utm_source=llms_txt&utm_medium=ai Настройка необходима, если в качестве источника контента указан приватный S3-бакет, который создан вне вашего аккаунта Timeweb Cloud.  Чтобы настроить AWS-авторизацию: 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. На вкладке «Управление» нажмите «Настроить» в блоке «AWS-авторизация». 3. Включите опцию. 4. Укажите значения Access key и Secret key — найти их можно в настройках вашего бакета. 5. Нажмите «Сохранить». # Кэширование Source: https://timeweb.cloud/docs/cdn/settings/cache?utm_source=llms_txt&utm_medium=ai Для настройки параметров кэширования: 1. Перейдите в раздел «CDN». 2. Кликните на нужный ресурс. 3. На вкладке «Управление» нажмите «Настроить» в блоке «Кэширование». 4. Включите необходимые опции и задайте их настройки. 5. Нажмите «Сохранить». ## CDN-кэширование Определяет, как долго контент хранится на серверах CDN. Время указывается в секундах. **Как работает:** - При первом запросе файл загружается с сервера-источника и сохраняется в CDN. - Пока не истекло время кэширования, CDN отдает файл без обращения к источнику. - После истечения времени кэширования, CDN снова запрашивает файл у сервера-источник и обновляет его в кэше. Заданное в этом разделе время кэширования будет использоваться, если в ответах источника контента: - нет заголовков `Cache-Control` или `Expires`; - заголовки `Cache-Control` или `Expires` присутствуют, но включено игнорирование заголовков управления кэшированием. ## Кэширование в браузере Определяет, как долго контент хранится в браузере пользователя. Время указывается в секундах. Позволяет ускорить повторные визиты, снизить трафик и уменьшить количество запросов к CDN. **Как работает:** - При включении опции CDN добавляет заголовок `Cache-Control`. - Браузер сохраняет файл локально. - При повторном открытии страницы используется кэш и файл не загружается заново. ## Всегда онлайн Позволяет отдавать кэшированную версию контента, даже если время кэширования истекло и источник недоступен. За счет этого повышается доступность сервиса и улучшается пользовательский опыт: пользователь может получать контент даже при ошибках соединения, таймаутах и ошибках ответов сервера. # Безопасность Source: https://timeweb.cloud/docs/cdn/settings/security?utm_source=llms_txt&utm_medium=ai Для настройки параметров безопасности: 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. На вкладке «Управление» нажмите «Настроить» в блоке «Безопасность». 3. Включите необходимые опции и настройте их параметры. 4. Нажмите «Сохранить». ## Редирект с HTTP на HTTPS Автоматически перенаправляет все запросы с HTTP на защищенный протокол HTTPS. Это позволяет защищать данные пользователей, соответствовать требованиям браузеров и улучшать показатели SEO. **Как работает:** - Пользователь обращается по протоколу HTTP. - CDN возвращает редирект (301/302) на HTTPS. - Дальнейшее взаимодействие идет по защищенному соединению. Настройка применяется на уровне CDN и не требует дополнительной конфигурации на уровне сервера-источника. Перед включением опции убедитесь, что для доменов раздачи [выпущен SSL-сертификат](https://timeweb.cloud/docs/cdn/ssl). ## Secure token Ограничивает доступ к контенту с помощью подписанных URL.  Может использоваться для контроля доступа к файлам, ограничения доступа к платному контенту, предотвращения прямого распространения ссылок. **Может использоваться для:** - защиты приватного или платного контента; - ограничения срока действия ссылок; - предотвращения прямого распространения ссылок; - ограничения доступа по IP-адресу. **Как работает:** - К URL добавляется специальная подпись (token), сгенерированная на основе секретного ключа. - CDN проверяет валидность подписи. - Если подпись корректна, доступ разрешается, если нет — возвращается ошибка 403 Forbidden. В поле «Секретный ключ» укажите произвольный секретный ключ, который будет использоваться для генерации подписей URL. **Ключ:** - создается и хранится на стороне клиента; - должен быть известен только вашему приложению и CDN; - используется при формировании подписанных ссылок. Рекомендуется использовать случайную строку длиной не менее 16 символов. Сгенерировать ее можно, например, так: ```bash openssl rand -base64 48 | tr -dc 'A-Za-z0-9' | head -c 32; echo ``` Строка будет такого вида: ```shell OCr2qxnZvdvMLtcy904EkABxn1eVPZLP ``` После включения Secure token ваше приложение должно формировать подписанные URL для доступа к контенту согласно алгоритму. #### Алгоритм формирования подписи Подписанный URL формируется на основе секретного ключа и параметров запроса. **1\. Формирование строки для подписи** Для расчета подписи используется строка вида: ```shell ``` - `` — секретный ключ, указанный в настройках; - `` — путь к запрашиваемому ресурсу; - `` — IP-адрес пользователя (используется только если включена проверка по IP); - `` — время истечения ссылки. Если проверка по IP или времени отключена, соответствующие значения в строку не добавляются. **2\. Вычисление подписи** - От полученной строки вычисляется MD5-хэш; - Результат кодируется в `base64` и приводится к URL-safe-формату: - символ `=` удаляется; - `+` заменяется на `-`; - `/` заменяется на `_`. **3\. Использование подписи в URL** Полученное значение используется как токен в пути URL ресурса: ```shell http:///md5(,)/ ``` #### Примечания - Домен CDN не участвует в расчете подписи. - Один и тот же ресурс может использоваться по HTTP и HTTPS с одной и той же подписью. #### Пример генерации подписанных ссылок: Python ```py import hashlib import base64 import time SECRET = "your_secret_key" CDN_DOMAIN = "https://example.cdn.twcstorage.ru" PATH = "/example.txt" # путь к файлу EXPIRES = int(time.time()) + 3600 # ссылка действует 1 час IP = "" # укажите IP, если используется ограничение # Формирование строки для подписи raw = SECRET + PATH + IP + str(EXPIRES) # MD5-хэш md5_hash = hashlib.md5(raw.encode()).digest() # base64 + URL-safe формат token = base64.b64encode(md5_hash).decode() token = token.replace("+", "-").replace("/", "_").replace("=", "") # Итоговый URL signed_url = f"{CDN_DOMAIN}/md5({token},{EXPIRES}){PATH}" print(signed_url) ``` NodeJS ```js const crypto = require('crypto'); const SECRET = 'your_secret_key'; const CDN_DOMAIN = 'https://example.cdn.twcstorage.ru'; const PATH = '/example.txt'; // путь к файлу const EXPIRES = Math.floor(Date.now() / 1000) + 3600; // ссылка действует 1 час const IP = ''; // укажите IP, если используется ограничение // Формирование строки для подписи const raw = `${SECRET}${PATH}${IP}${EXPIRES}`; // MD5-хэш const md5Hash = crypto .createHash('md5') .update(raw) .digest(); // base64 + URL-safe формат let token = md5Hash.toString('base64'); token = token .replace(/\+/g, '-') .replace(/\//g, '_') .replace(/=/g, ''); // Итоговый URL const signedUrl = `${CDN_DOMAIN}/md5(${token},${EXPIRES})${PATH}`; console.log(signedUrl); ``` Где: - `SECRET` — ключ, сгенерированный ранее. - `CDN_DOMAIN` — домен CDN-ресурса. - `PATH` — путь к файлу, начиная с `/`. Домен указывать не нужно. - `EXPIRES` — время истечения ссылки в формате Unix timestamp. - `IP` — указывается только если включено ограничение по IP. Если не используется, оставьте пустую строку. ## Ограничение по IP Доступно при включенной опции «Secure token». Разрешает доступ к контенту только с определенного IP-адреса.  **Как работает:** - IP-адрес включается в подпись URL. - CDN сравнивает IP пользователя с указанным и запрещает доступ при несовпадении. # Производительность Source: https://timeweb.cloud/docs/cdn/settings/performance?utm_source=llms_txt&utm_medium=ai Для настройки параметров производительности: 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. На вкладке «Управление» нажмите «Настроить» в блоке «Контент и подключение». 3. Включите необходимые опции и настройте их параметры. 4. Нажмите «Сохранить». ## HTTP/3 Включает использование современного протокола HTTP/3 для передачи данных. Позволяет ускорить загрузку страниц, снизить задержки и улучшить пользовательский опыт. Эффект особенно заметен в мобильных сетях и при нестабильных соединениях. ## Сжатие Gzip Включает автоматическое сжатие текстового контента (HTML, CSS, JS, JSON) перед его передачей пользователю. Распаковку выполняет браузер на стороне клиента. Позволяет уменьшить объем трафика, ускорить загрузку страниц и снизить нагрузку на сеть. Gzip не применяется к уже сжатым форматам (например, изображениям или видео). ## Ускорение загрузки больших файлов Ускоряет загрузку больших файлов за счет их разделения на части.  CDN кэширует файл небольшими блоками и отдает их независимо друг от друга. При повторных запросах отдельные части файла уже могут быть в кэше. Это снижает нагрузку на сервер-источник и улучшает стабильность при обрывах соединения. При включении опции вы можете указать размер блока: от 1 МБ до 1024 МБ. ## Конфигурация robots.txt Позволяет настроить, как поисковые роботы (Google, Яндекс и т.д.) будут индексировать контент на домене раздачи. > [!NOTE] > По умолчанию CDN-домены исключены из индексации, так как в противном случае поисковые роботы могут воспринять CDN-домен как зеркало сайта или источник дублирующегося контента, что может негативно повлиять на индексацию и SEO основного сайта. > > Меняйте эту настройку, только если вы точно знаете, что делаете. Можно выбрать одну из опций: - **Не индексировать** (по умолчанию) — поисковым роботам запрещено индексировать CDN-домен. - **Проксировать** — использовать `robots.txt` с основного сайта. - **Свой** — возможность задать собственный `robots.txt` для CDN для тонкой настройки правил индексации. Можно ввести директивы вручную или загрузить готовый файл. # HTTP-заголовки и методы Source: https://timeweb.cloud/docs/cdn/settings/http-headers?utm_source=llms_txt&utm_medium=ai Для настройки HTTP-заголовков: 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. На вкладке «Управление» нажмите «Настроить» в блоке «HTTP-заголовки». 3. Включите необходимые опции и укажите их параметры. 4. Нажмите «Сохранить». ## Заголовки запросов Позволяет добавлять кастомные HTTP-заголовки к запросам, которые CDN отправляет на сервер-источник при каждом запросе. Можно задать несколько пар «заголовок — значение». **Требуется для:** - передачи токенов авторизации; - интеграции с backend; - [управления доступом на стороне сервера-источника](https://timeweb.cloud/docs/cdn/protect-cdn-origin-with-http-header); - проксирования служебных данных. ## Поддержка CORS Позволяет управлять кросс-доменным доступом к контенту через CDN. **Как работает:** - CDN добавляет заголовок `Access-Control-Allow-Origin`. - Браузер проверяет значение этого заголовка и принимает решение, можно ли предоставить доступ к ресурсу со стороннего сайта. В поле «Домен» необходимо указать разрешенный источник запроса (`Origin`) — домен сайта, с которого браузер будет выполнять запросы к ресурсам CDN.  Например: - сайт `https://example.com` выполняет запрос к ресурсу CDN; - браузер автоматически отправляет заголовок: `Origin: https://example.com`; - если в настройках CORS указан `example.com`, браузер разрешит доступ к ресурсу. **Допустимые форматы для поля «Домен»:** - `example.com` — точное совпадение; - `*.example.com` — все поддомены `example.com`, не включая сам домен `example.com`; - `.example.com` — домен `example.com` и все его поддомены; - `~a\d+\.example.com` — регулярное выражение. ### Всегда добавлять заголовок Доступно при включении опции «Поддержка заголовков CORS». Добавляет CORS-заголовки ко всем ответам CDN, независимо от кода ответа. По умолчанию заголовок добавляется только для успешных и редирект-ответов. При включении опции заголовок добавляется всегда. **Требуется для:** - работы фронтенда с API и CDN; - загрузки ресурсов с других доменов; - корректной работы SPA и веб-приложений. ## Поддерживаемые HTTP-методы Для работы с контентом через CDN поддерживаются методы `GET`, `HEAD` и `OPTIONS`. Подключение дополнительных HTTP-методов невозможно. # Управление SSL Source: https://timeweb.cloud/docs/cdn/ssl?utm_source=llms_txt&utm_medium=ai Чтобы ваши [домены раздачи](https://timeweb.cloud/docs/cdn/settings/domains) работали по протоколу HTTPS, необходимо добавить для них SSL-сертификат.  Через панель управления вы можете добавить существующий SSL или выпустить новый сертификат Let’s Encrypt. Выпуск SSL не требуется, если в качестве домена раздачи вы используете только технический домен, выданный при создании ресурса. Он настроен на работу по HTTPS по умолчанию. ## Выпуск SSL Let’s Encrypt Сертификат будет выпущен на все домены раздачи, подключенные к ресурсу на момент выпуска SSL. Предварительно убедитесь, что для всех доменов раздачи указана [корректная CNAME-запись](https://timeweb.cloud/docs/cdn/settings/domains#nastrojka-cname) и изменения DNS уже применены. В противном случае выпуск сертификата завершится ошибкой. Чтобы выпустить бесплатный SSL Let’s Encrypt: 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. Откройте вкладку «SSL-сертификаты». 3. Нажмите «Выпустить Let’s Encrypt». Сертификат будет выпущен и отобразится на вкладке «SSL-сертификаты» вашего CDN-ресурса. Обычно это занимает пару минут, но в отдельных случаях процесс может длиться до 10-20 минут.  > [!NOTE] > После выпуска SSL [включите редирект на HTTPS](https://timeweb.cloud/docs/cdn/settings/security#redirekt-s-http-na-https) в настройках ресурса. Продление сертификата будет выполняться автоматически. ## Добавление существующего SSL Если для домена раздачи уже выпущен SSL-сертификат, вы можете загрузить его следующим образом:  1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. Откройте вкладку «SSL-сертификаты». 3. Нажмите «Загрузить». 4. Вставьте значения ключа и сертификата в соответствующие поля либо загрузите их файлы. 5. Нажмите «Заказать». Сертификат будет добавлен и отобразится на вкладке «SSL-сертификаты» вашего CDN-ресурса.  6. Кликните на три точки у сертификата и нажмите «Привязать». > [!NOTE] > После привязки SSL [включите редирект на HTTPS](https://timeweb.cloud/docs/cdn/settings/security#redirekt-s-http-na-https) в настройках ресурса. ## Удаление сертификата Если сертификат больше не нужен (например, он истек или был заменен на другой), его можно удалить из списка сертификатов. Для этого : 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. Откройте вкладку «SSL-сертификаты». 3. Кликните на три точки у сертификата и выберите «Удалить». 4. Подтвердите удаление. # Очистка кэша Source: https://timeweb.cloud/docs/cdn/clear?utm_source=llms_txt&utm_medium=ai Функция позволяет удалить выбранные файлы из CDN-кэша. После очистки кэшированных данных CDN при следующем запросе заново запрашивает актуальную версию файла с сервера-источника. Используется для: - принудительного обновления контента; - удаления устаревших версий файлов; - обеспечения актуальности данных, отдаваемых через CDN. Очистка кэша не влияет на оригинальные файлы на сервере-источнике. Чтобы очистить кэш: 1. Перейдите в раздел «CDN». 2. Кликните на нужный ресурс. 3. Нажмите на иконку очистки справа вверху. ![Wild Lacerta 04 30 2026 10 28 Am](https://content.timeweb.com/assets/2d615cdf-4150-4c0e-a508-ec5e0ad6784a.png?width=1574&height=789) 4. Выберите тип очистки:  - Полная — удалит все файлы из CDN-кэша; - Частичная — удалит только файлы по указанным путям. 5. Если вы выбрали частичную очистку, укажите пути к файлам относительно корневой директории. 6. Нажмите «Очистить». # Лимит исходящего трафика Source: https://timeweb.cloud/docs/cdn/limit?utm_source=llms_txt&utm_medium=ai Для каждого CDN-ресурса вы можете установить ежемесячный лимит исходящего трафика, чтобы контролировать расходы и избежать непредвиденных затрат при резких всплесках трафика. При достижении лимита ресурс будет [приостановлен](https://timeweb.cloud/docs/cdn/limit#rabota-resursa-pri-dostijenii-limita). Минимальное значение лимита — 1 ГБ в месяц. Максимальный лимит не ограничен. Лимит действует в пределах календарного месяца. С началом нового месяца объем использованного трафика обнуляется, и снова становится доступен полный лимит. Использованный объем трафика за текущий месяц доступен Дашборде ресурса. ![Charming Grosbeak 05 29 2026 03 10 Pm](https://content.timeweb.com/assets/ef21baae-5646-42cd-854a-cc75809ef178.png?width=1565&height=829) Управлять лимитом можно в настройках CDN-ресурса. ## Включение лимита Чтобы включить лимит трафика: 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. На вкладке «Управление» кликните «Настроить» в блоке «Ограничение исходящего трафика». ![Charming Grosbeak 05 29 2026 02 59 Pm](https://content.timeweb.com/assets/23c77499-fb2f-42c9-9e07-ea5c24436080.png?width=1567&height=1295) 3. Включите опцию. 4. Укажите желаемый лимит.  5. Сохраните изменения. ![Charming Grosbeak 05 29 2026 03 01 Pm](https://content.timeweb.com/assets/41d7bd20-2fe8-4248-8f78-b36d27f26498.png?width=1733&height=868) ## Изменение лимита Чтобы изменить текущий лимит: 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. На вкладке «Управление» кликните «Настроить» в блоке с лимитом. ![Charming Grosbeak 05 29 2026 03 02 Pm](https://content.timeweb.com/assets/73864cc4-4e3b-45c1-afb5-28b1411ba0ac.png?width=1557&height=1276) 3. Укажите новое значение лимита.  4. Сохраните изменения. ![Charming Grosbeak 05 29 2026 03 03 Pm](https://content.timeweb.com/assets/5018a059-7c9c-4009-be99-147ee25c69bb.png?width=1738&height=869) ## Отключение лимита Чтобы отключить лимит трафика: 1. Перейдите в раздел «CDN» и кликните на нужный ресурс. 2. На вкладке «Управление» кликните «Настроить» в блоке с лимитом. ![Charming Grosbeak 05 29 2026 03 02 Pm](https://content.timeweb.com/assets/73864cc4-4e3b-45c1-afb5-28b1411ba0ac.png?width=1557&height=1276) 3. Отключите опцию. 4. Сохраните изменения. ## Работа ресурса при достижении лимита При достижении лимита CDN-ресурс автоматически приостанавливается.  > [!NOTE] > Приостановка ресурса после превышения лимита может занимать до двух часов. В этот период трафик продолжит тарифицироваться. С началом нового календарного месяца лимит сбросится и ресурс запустится заново. Если необходимо возобновить работу ресурса в текущем месяце, [увеличьте](https://timeweb.cloud/docs/cdn/limit#izmenenie-limita) или [отключите](https://timeweb.cloud/docs/cdn/limit#otkluchenie-limita) лимит, как описано выше. ## Уведомления Если для ресурса установлен лимит трафика, мы отправим вам уведомления: - при достижении 80% лимита; - при полном исчерпании лимита. По умолчанию включены уведомления на емейл, в Telegram и Макс, если они привязаны. Дополнительно можно настроить [вебхук-уведомления](https://timeweb.cloud/docs/account-management/webhook-notification/configure-webhooks). Уведомления по SMS недоступны. Управлять уведомлениями можно в настройках аккаунта: 1. Кликните на логин аккаунта справа вверху и выберите «Настройки аккаунта». 2. Перейдите на вкладку «Уведомления». # Приостановка ресурса Source: https://timeweb.cloud/docs/cdn/deactivate?utm_source=llms_txt&utm_medium=ai Вы можете приостановить работу CDN-ресурса в панели управления. Стоимость приостановленного ресурса — 1 рубль в месяц. Трафик через ресурс не проходит и не тарифицируется. > [!NOTE] > Приостановка выполняется не мгновенно. Для применения изменений может потребоваться до двух часов. ## Как приостановить ресурс Чтобы приостановить ресурс: 1. Перейдите в раздел «CDN». 2. Кликните на три точки у нужного ресурса и выберите «Приостановить». 3. Подтвердите приостановку ресурса. ## Автоматическая приостановка Если ресурс неактивен в течение 7 дней, он автоматически приостанавливается. Все настройки сохраняются, и при необходимости ресурс можно возобновить. При автоматической приостановке отправляется уведомление на почту, в Телеграм или Макс. Неактивным считается ресурс, к которому в течение 7 дней не поступило ни одного HTTP-запроса. ## Возобновление работы ресурса Чтобы возобновить работу ресурса:  1. Перейдите в раздел «CDN». 2. Кликните на три точки у нужного ресурса и выберите «Возобновить». # Ограничение прямого доступа к серверу-источнику Source: https://timeweb.cloud/docs/cdn/protect-cdn-origin-with-http-header?utm_source=llms_txt&utm_medium=ai Для CDN-ресурса можно настроить пользовательский HTTP-заголовок, который будет автоматически добавляться ко всем запросам от CDN к серверу-источнику. На стороне сервера-источника можно проверять наличие и значение этого заголовка, отклоняя любые запросы без него. Такой подход позволяет защитить сервер-источник от прямого доступа без необходимости использовать список IP-адресов CDN. Сервер остается доступен по сети, однако прямые обращения к нему будут получать ответ `403 Forbidden`. > [!NOTE] > Этот механизм защищает только сервер-источник от обхода CDN. Он не ограничивает доступ пользователей к файлам через домен раздачи. Для ограничения доступа к контенту [используйте Secure token](https://timeweb.cloud/docs/cdn/settings/security#secure-token). ## Настройка HTTP-заголовка в CDN Чтобы добавить пользовательский заголовок: 1. Откройте нужный ресурс в разделе «CDN». 2. Перейдите во вкладку «Управление». 3. Нажмите кнопку «Настроить» напротив пункта «HTTP-заголовки». 4. Включите опцию «Заголовки запросов». 5. Укажите произвольное имя заголовка и его значение. В качестве значения рекомендуем использовать случайно сгенерированную строку — так ее невозможно будет подобрать стороннему пользователю. 6. Нажмите кнопку «Сохранить» и дождитесь применения настроек. ![Настройка HTTP-заголовка для CDN](https://content.timeweb.com/assets/1be3f1d4-eeb2-4346-a93e-4f889c2b1186.png?width=2806&height=1612) ## Пример настройки ограничения доступа В качестве примера настроим сервер-источник на базе Nginx, который будет отдавать статический файл только при наличии секретного заголовка. ### Настройка сервера-источника Установите Nginx: ```bash sudo apt update sudo apt install -y nginx ``` Создайте директорию для статических файлов: ```bash sudo mkdir -p /var/www/origin-static ``` Создайте html-страницу: ```bash echo 'Привет с сервера-источника' | sudo tee /var/www/origin-static/hello.txt ``` Создайте файл конфигурации `/etc/nginx/conf.d/cdn-origin.conf`: ```bash map $http_x_cdn_origin_secret $cdn_origin_secret_ok { default 0; "change-me-to-long-random-secret" 1; } server { listen 80; server_name origin.example.site; root /var/www/origin-static; location / { if ($cdn_origin_secret_ok = 0) { return 403; } try_files $uri =404; add_header Cache-Control "public, max-age=60"; } } ``` Замените значение `change-me-to-long-random-secret` на случайную строку. Сгенерировать ее можно командой: ```bash openssl rand -base64 48 | tr -dc 'A-Za-z0-9' | head -c 30 echo ``` Также укажите собственный домен вместо `origin.example.site`. В блоке: ```bash map $http_x_cdn_origin_secret $cdn_origin_secret_ok { default 0; "change-me-to-long-random-secret" 1; } ``` Nginx проверяет значение заголовка `X-CDN-Origin-Secret`. Если значение совпадает с указанным в конфигурации, запрос будет обработан. В противном случае сервер вернет ошибку `403 Forbidden`. Если включен стандартный сайт Nginx, отключите его: ```bash sudo rm -f /etc/nginx/sites-enabled/default ``` Проверьте конфигурацию: ```bash sudo nginx -t ``` Примените изменения: ```bash sudo systemctl reload nginx ``` ### Проверка работы сервера-источника Выполните запрос без заголовка: ```bash curl -i "http://origin.example.site/hello.txt" ``` В ответ должен быть получен статус: ```shell 403 Forbidden ``` Теперь выполните запрос с корректным заголовком: ```shell curl -i -H "X-CDN-Origin-Secret: сгенерированная_случайная_строка" "http://origin.example.site/hello.txt" ``` Ожидаемый результат: ```shell 200 OK ``` ### Настройка сертификата Установите Certbot: ```bash sudo apt update sudo apt install -y certbot python3-certbot-nginx ``` Выпустите сертификат: ```bash sudo certbot --nginx -d origin.example.site ``` Certbot автоматически добавит SSL-настройки в конфигурацию Nginx и предложит настроить перенаправление с HTTP на HTTPS. ## Настройка CDN-ресурса [Создайте CDN-ресурс](https://timeweb.cloud/docs/cdn/create) и в качестве источника укажите домен, настроенный на предыдущем этапе. После создания ресурса: 1. Откройте его в панели управления. 2. Перейдите во вкладку «Управление». 3. Нажмите кнопку «Настроить» напротив пункта «HTTP-заголовки». 4. Включите опцию «Заголовки запросов». 5. Укажите: - имя заголовка — `X-CDN-Origin-Secret`; - значение — ту же случайную строку, которая указана в конфигурации Nginx. 7. Нажмите кнопку «Сохранить» и дождитесь обновления ресурса. ## Проверка Попробуйте обратиться к файлу напрямую на сервере-источнике: ```bash curl -i "https://origin.example.site/hello.txt" ``` Сервер должен вернуть ошибку `403 Forbidden`. Теперь выполните запрос через CDN-домен: ```bash curl -i "http://1cxiuba12bn.cdn.twcstorage.ru/hello.txt" ``` В ответ вы получите содержимое файла и статус `200 OK`. Обратите внимание, что заголовок `X-CDN-Origin-Secret` не передается конечному пользователю. Он используется только для взаимодействия между CDN и сервером-источником. # Удаление ресурса Source: https://timeweb.cloud/docs/cdn/delete?utm_source=llms_txt&utm_medium=ai Если вам нужно временно отключить ресурс, его можно [приостановить](https://timeweb.cloud/docs/cdn/deactivate). Чтобы безвозвратно удалить ресурс: 1. Перейдите в раздел «CDN». 2. Кликните на три точки у нужного ресурса и выберите «Удалить». 3. Подтвердите удаление.