- tocdepth
2
Дополнительные настройки HTTP-ресурса
Дополнительные настройки ресурса вы можете задать в процессе его создания или после — на вкладке Настройки ресурса.
На этой странице
Следовать редиректам
По умолчанию кешируются только ответы с кодами 301 Moved Permanently/302 Found при их получении от вашего ориджина. Активируйте эту опцию для возможности перехода по адресам редиректа и кеширования контента.
Использовать HTTP/2
По умолчанию поддерживается протокол HTTP/2.0. Отключите эту опцию, если поддержка данного протокола не требуется.
Использовать только современные версии TLS
По умолчанию используются все версии протокола TLS, но вы можете подключить использование исключительно новых версий протокола TLS (v1.2, v1.3).
Использовать сильные SSL-шифры
Вы можете подключить использование сильных SSL-шифров. Опция доступна только вместе с опцией Использовать только современные версии TLS.
Параметры HTTPS
По умолчанию ваш контент будет доступен с узлов Cloud.ru как по протоколу HTTP, так и по протоколу HTTPS. Но вы можете настроить автоматическое перенаправление, используя опцию Автоматически перенаправлять HTTP на HTTPS.
Если вы хотите использовать только протокол HTTPS — активируйте опцию Использовать только HTTPS.
Внимание
Если вы включили доступ к контенту только по HTTPS, то на все запросы по HTTP будет возвращен ответ с кодом 403 Forbidden (запрет доступа).
Поисковая индексация
Внимание
По умолчанию мы исключаем из индексации CDN-ссылки, чтобы поисковые роботы не видели «зеркало» вашего сайта. Если робот поймает «зеркало» вашего сайта — это может привести к исключению сайта из индексации. Только опытным пользователям рекомендуется работать с этим разделом.
При помощи этой настройки вы можете тонко настроить индексацию вашего контента поисковыми роботами.
Можно настроить проксирование вашего файла robots.txt
или загрузить его со своего устройства к нам на портал.
Перед проксированием или загрузкой вашего robots.txt
мы рекомендуем сперва проверить правильность его заполнения на специальном ресурсе.
Время кеширования контента
Здесь вы можете указать время кеширования в зависимости от кода ответа (2xx, 3xx) и установить игнорирование заголовков управления кешированием (Expires и Cache-Control).
Query String
При включении этой опции при кешировании контента будут учитываться параметры в ссылке вида: site.ru/img/1.jpg?id=3
.
Локальная авторизация
Решение о доступе к ресурсу принимается средствами нашей сети на основе критериев, обозначенных владельцем контента.
В данном случае авторизация запросов пользователей выполняется исключительно в сети Cloud.ru, внешние ресурсы не используются.
В момент обращения пользователя к защищенному ресурсу владельцу контента необходимо сформировать специальную ссылку.
Пример ссылки: http://example.a.trbcdn.net/path/to/file?md5=SMsM5ezVQp79ikyjz9tjUw&e=1387984516
Ссылка содержит авторизационный параметр md5(<md5 hash>[,<expires>])
в пути:
md5 hash
— хеш MD5 в формате Base64 for URL, сгенерированный на основе URI запрошенного ресурса, времени жизни ссылки, секретного ключа, IP-адреса пользователя (опционально);expires
— время окончания действия ссылки в формате POSIX time (необязательный параметр).
При обращении к контенту с использованием сгенерированной ссылки, CDN вычисляет значение MD5 и сравнивает его с полученным. Если значение MD5 не совпадает, то пользователю возвращается ответ с кодом 403 Forbidden (запрет на воспроизведение).
Если текущее время превышает значение expires, то пользователю возвращается ответ с кодом 410 Gone (целевой ресурс больше недоступен).
Пример алгоритма расчета MD5-хеша с использованием IP-адреса пользователя в качестве одного из входных параметров:
md5 = base64_url(md5(SECRET/path/to/file1.2.3.4expiretime))
Пример алгоритма расчета MD5-хеша, если IP-адрес не учитывается:
md5 = base64_url(md5(SECRET/path/to/fileexpiretime))
Внимание
Доменная часть URI при вычислении хеша не используется.
При генерации MD5 в URL не должно быть символов в формате URL encode. Должны быть исходные символы: кириллица, пробелы, проценты и т.д. Запрашивать с этим хешем необходимо закодированный вариант URL.
Можно подписывать часть пути (например, для /path/to/file
можно подписать сам файл, /path/to
, /path
).
Пример генерации ссылки:
Есть следующие входные данные:
секретный ключ:
zah5Mey9Quu8Ea1k
IP-адрес пользователя:
1.2.3.4
URI ресурса для HTTP:
http://example.a.trbcdn.net/path/to/file
Вычисляем время действия ссылки. В приведенном примере — неделя с момента генерации.
$ php -r 'print time() + (7 * 24 * 60 * 60) . "\n";' 1387984516
Вычисляем хеш MD5 в формате Base64 for URL:
$ php -r 'print str_replace("=", "",strtr(base64_encode(md5("zah5Mey9Quu8Ea1k/path/to/file1.2.3.41387984516", TRUE)), "+/", "-_")) . "\n";' SMsM5ezVQp79ikyjz9tjUw
Итоговая ссылка:
http://example.a.trbcdn.net/md5(SMsM5ezVQp79ikyjz9tjUw,1387984516)/path/to/file
Внимание
Хеш MD5, вычисленный для HTTP, является базовым для данного ресурса. То есть один и тот же хеш будет использован для ссылок на файл по протоколам HTTP, HTTPS, несмотря на то, что URI для разных протоколов может немного отличаться.
При локальной авторизации контролируются следующие параметры:
URI запрашиваемого ресурса. Проверяется, что ссылка была сформирована именно для этого файла.
Секретный ключ. Проверяется, что ссылка сформирована именно владельцем контента.
Время окончания действия ссылки (опционально). Вы можете отключить проверку, выбрав опцию Не ограничивать по времени.
IP-адрес пользователя (опционально). Проверяется, что ресурс запрошен именно с того IP-адреса, для которого была сформирована ссылка. Вы можете отключить проверку, выбрав опцию Не учитывать IP адрес.
Внешняя авторизация
Внешняя авторизации предназначена для возможности ограничения доступа к ресурсу с произвольной логикой, описанной в вашем скрипте авторизации.
Решение о доступе к контенту принимается на основе ответа вашего скрипта, ссылку на который вы указываете в личном кабинете при создании/редактировании ресурса.
Если от скрипта авторизации пришел ответ со статусом 200, то доступ к контенту разрешен. В противном случае — доступ запрещен.
Авторизационному скрипту передаются следующие заголовки:
Host
— содержит имя домена, для которого предназначен запрос.
X-Request-URI
— содержит URI запрашиваемого ресурса.
X-Forwarded-For
— содержит реальный IP-адрес пользователя, который запрашивает ресурс.
X-Remote-Addr
— содержит IP-адрес пользователя, который запрашивает ресурс или прокси-сервера.
Ограничения раздачи
В этом разделе вы можете установить ограничения раздачи контента в зависимости от страны и региона, IP адреса, заголовка referer или User-Agent.
Сжатие Brotli
Данная опция позволяет включить сжатие brotli.
Brotli — это алгоритм с открытым исходным кодом, используемый для сжатия данных. Он использует словарь с часто встречающимися последовательностями строк в текстовых файлах (например, .css, .js), что позволяет достичь для них в среднем на 20% большей степени сжатия в сравнении с gzip.
Brotli может подключаться как для всего ресурса в целом, так и по правилам для конкретных путей через интерфейс личного кабинета. Работа алгоритма Brotli возможна только по HTTPS, так как браузеры не поддерживают Brotli c HTTP.
Сжатие возможно для следующих типов файлов
application/javascript
application/json
application/vnd.apple.mpegurl
application/vnd.ms-fontobject
application/x-font-opentype
application/x-font-truetype
application/x-font-ttf
application/x-javascript
application/xml
application/xml+rss
font/eot - font/opentype
font/otf - image/svg+xml
image/vnd.microsoft.icon
image/x-icon
text/compressible
text/css
text/javascript
text/xml
Для корректной работы сжатия браузер должен отправлять заголовок Accept-Encoding: br
(поддерживается в браузерах на базе Chrome 49+, Firefox 44+, Opera 36+).
Оптимизация и модификация изображений
После включения данной опции вы сможете использовать оптимизацию раздачи изображений и их модификацию на лету.
Оптимизация раздачи изображений
Данная услуга позволяет конвертировать изображения из форматов JPEG, GIF, PNG в формат WEBP на лету.
WebP — это формат изображений, использующий продвинутый алгоритм сжатия (на 25-35%) без видимых потерь в качестве. Он обеспечивает сжатие без потерь лучше, чем PNG и JPEG, сохраняя при этом меньший размер файла.
Платформа анализирует HTTP-заголовок Accept
из запроса пользователя и определяет, поддерживает ли браузер формат WebP:
если поддерживает, то пользователь получает изображение в формате WebP;
если не поддерживает, то передается изображение в оригинальном формате.
Преобразование в формат WebP происходит автоматически в асинхронном режиме. Это означает, что:
Вам не нужно предварительно менять код веб-ресурса и/или вид (формат) ссылок к изображениям.
Сигналом к преобразованию изображения в формат WebP служит первый запрос со стороны конечного пользователя. При этом в ответ на первый запрос может быть выдано изображение в исходном формате (во избежание задержки на преобразование), а после завершения преобразования на все последующие запросы к этому изображению будут отдаваться изображения в формате WebP (в случае его поддержки браузерами конечных пользователей).
Вы можете одновременно изменить качество изображения с помощью модификатора quality
.
Качество определяется значением параметра quality=<value>
в URI вида /ioss(quality=<value>)/
.
Значение задается целым числом в диапазоне 1-100. Чем больше число, тем выше качество. Значение по умолчанию: 75.
Примеры запросов:
https://iaqgo9bm5r.a.trbcdn.net/ioss(quality=70)/example.jpg
https://iaqgo9bm5r.a.trbcdn.net/ioss(quality=1)/example.jpg
Модификация изображений
Услуга позволяет изменять изображения на лету в момент запроса. Обрабатываются только файлы изображений с расширениями .jpeg, .jpg, .gif, .png и .webp.
URI вида /ioss([параметр модификации]=[значение])/
интерпретируются как специальные и не передаются на источник — они используются для получения модифицированного изображения.
В результате преобразования пользователь получает модифицированное изображение.
Если специальные URI отсутствуют в пути к изображению при запросе, то пользователь получает оригинальное изображение.
Доступные модификации:
Модификация | Параметр модификации | Возможные значения |
---|---|---|
Изменение качества | quality | 1-100 integer |
Изменение размера | resize=[width]x[height] resize=[width], resize=x[height] |
1-4000 integer (pixels) for [width], [height] |
Прогрессивный JPEG | progressive | y/n |
Поддерживаются следующие параметры модификации:
quality
– позволяет изменять качество изображения.Качество определяется значением параметра
quality=[value]
. Значение задается целым числом в диапазоне 1-100. Чем больше число, тем выше качество.Пример запроса: https://example.a.trbcdn.net/ioss(quality=70)/example.jpg
resize
– позволяет изменять размер изображения.Новый размер задается в запросах от пользователя в качестве значения параметра
resize
в виде[width]x[height]
, либо[width]
, либоx[height]
. В двух последних случаях вторая размерность вычисляется исходя из соотношения сторон исходного изображения. Изменение размера без потерь возможно только в меньшую сторону. Размерности задаются целыми числами.Примеры запросов: https://example.a.trbcdn.net/ioss(resize=400x300)/example.jpg https://example.a.trbcdn.net/ioss(resize=x200)/example.jpg
progressive
– позволяет отрисовывать изображение сначала в минимальном качестве, а потом улучшать по мере загрузки.Пример запроса: https://example.a.trbcdn.net/ioss(progressive=y)/example.jpg
Конвертация видео
Активируйте опцию, если видео имеет формат MP4-файла и его необходимо раздавать по стриминговым протоколам HLS, MSS или MPEG-DASH.
Опция может быть включена для всего ресурса, либо для определенного пути (правила).
Внимание
Опция недоступна для MP4-файлов длительностью менее 10 секунд.
Для этой услуги не поддерживается контейнер Fragmented MP4. Проверить контейнер файла вы можете с помощью команды
MP4Box -info test.mp4
Описание запросов для просмотра MP4-файлов с использованием стриминговых протоколов можно найти на вкладке «Инструкция по настройке» на странице редактирования ресурса в личном кабинете.
Для подключения опции обратитесь в техническую поддержку.
Защита видео от пиратов (DRM)
Активируйте опцию, если планируете использовать технические средства защиты авторских прав, которые ограничивают пиратский доступ к видео — DRM (Digital Rights Management).
Для подключения опции обратитесь в техническую поддержку.
Была ли статья полезной?
для Dev & Test