Общие настройки CDN-ресурса

Откройте раздел с настройками CDN-ресурса, нажав на карточку ресурса.

Доменное имя

После создания CDN-ресурса будет сгенерирован «домен по умолчанию» вида ***.selcdn.net или ***.akamaized.net, в зависимости от выбранного провайдера. Посмотреть «домен по умолчанию» можно на вкладке Домены.

Через «домен по умолчанию» раздача контента идет по https. Например, на основном сервере (источник контента), в папке «photos» есть файл cat.jpg. Для того чтобы раздавать этот файл через CDN, можно использовать адрес вида ***.selcdn.net/photos/cat.jpg.

Персональный домен

Кроме раздачи через «домен по умолчанию» имеется возможность подключить «персональный домен» и раздавать файлы через него.

Для добавления «персонального домена» в карточке CDN-ресурса перейдите на вкладку Домены, нажмите кнопку Подключить домен и введите имя домена.

Примечание: в качестве «персональных доменов» можно использовать домены не ниже третьего уровня.

Чтобы активировать «персональный домен» создайте CNAME-запись у своего DNS-провайдера.

SSL-сертификаты

SSL-сертификат — это уникальная цифровая подпись вашего сайта, необходимая для организации защищенного соединения между клиентом и сервером, что особенно важно при передаче конфиденциальной информации и проведении финансовых операций (HTTPS-протокол).

При использовании «домена по умолчанию» домен покрывается Общим сертификатом и раздача ведется по протоколу https. В случае использования персонального домена и раздачи по https протоколу необходимо загрузить свой личный SSL-сертификат.

Примечание: В Akamai нельзя использовать свои сертификаты.

В момент подключения собственного SSL-сертификата раздача контента через «домен по умолчанию» начнет осуществляться по http-протоколу, так как в один момент времени может быть активен только один сертификат.

Добавление личного SSL-сертификата

Чтобы привязать личный SSL-сертификат:

  1. Перейдите в панели управления в раздел Ресурсы.
  2. Откройте карточку CDN-ресурса.
  3. Перейдите на вкладку Сертификаты.
  4. Нажмите кнопку Добавить SSL-сертификат.

  5. Укажите сертификат в формате PEM и приватный ключ.

  6. Нажмите кнопку Добавить.

Сертификат будет привязан к ресурсу, а также добавлен в список личных сертификатов в разделе SSL-сертификаты сервиса CDN.

Группа источников

Если в качестве источника контента выбран свой веб-сервер, то можно добавить дополнительные источники контента. Для этого:

  1. Нажмите кнопку Редактировать источник.
  2. Укажите Домен и Порт подключения домена.
  3. Сохраните изменения.

Примечание: В Akamai нельзя выбрать несколько источников контента.

Заголовок Host

Заголовок Host — это заголовок, который CDN-серверы используют при запросе контента с источника. Он позволяет настроить гибкую отдачу контента в зависимости от значения заголовка.

Есть два варианта настройки заголовка Host:

  • Кастомный заголовок Host — при создании ресурса данный вариант выбран по умолчанию. Значение заголовка Host автоматически подставляется в зависимости от источника данных. Вы можете ввести свое значение заголовка.
  • Пересылать заголовок Host — при запросе на источник в заголовке Host будет уходить значение, которое пришло в запросе на CDN.

Сервер источника контента должен разрешать запросы с указанным заголовком. Для проверки того, что заголовок задан верно, введите команду:

curl -I -H "Host:cdn.site.com" https://origin.site.com

, где

  • cdn.site.com — заголовок, который указан в Заголовок Host;
  • https://site.ru — домен или оригинальный IP.

Убедитесь, что сервер может обрабатывать заданный заголовок.

Настройка заголовка Host

Заголовок Host указывается в запросе к серверу Origin. Благодаря этому заголовку веб-сервер определяет какой контент ему отдать.

Рассмотрим веб-сервер с одним IP-адресом, но несколькими доменами или поддоменами, например:

example.com
example2.net

A-записи в DNS для данных доменов указывают на один IP-адрес, например: 1.2.3.4 При этом, при обращении к этим доменам — получается разный контент.

Как веб-сервер понимает, какой контент ему отдавать? NGINX смотрит на то, что пришло в заголовке Host в запросе и отдает соответствующий контент, используя директиву server_name в конфигурации server для доменов.

Пример конфигурации:

server {
    listen      80;
    server_name example.com www.example.com;
    ...
}

server {
    listen      80;
    server_name example2.net www.example2.net;
    ...
}

В CDN есть возможность указать, какой заголовок Host использовать при запросе к Origin:

  • определенный кастомный заголовок, указанный пользователем, который в дальнейшем будет подставляться в каждый запрос.
  • заголовок Host, который будет приходить на CDN — и передавать его в запросе к Origin.

Сжатие файлов

Сжатие файлов сократит время доставки контента. В зависимости от параметров запроса клиент получит сжатый или несжатый файл:

  • На CDN-серверах — файлы будут сжиматься на CDN-серверах;
  • На источнике — файлы будут сжиматься на источнике.

Расширения файлов, поддерживающих сжатие:

  • text/plain
  • text/css
  • text/html
  • application/x-javascript
  • text/xml
  • application/xml
  • application/xml+rss
  • text/javascript
  • application/json
  • application/javascript

Форматы файлов изображений (jpeg, jpg, png), поддерживаемые веб-файлами, а также видеоролики, PDF-файлы и другие двоичные форматы уже сжаты. Использование gzip на них не предоставляет дополнительных преимуществ.