Какие заголовки имеют значение для защиты M3U8 хотлинка?
| Заголовок | Что это должно быть | Когда его использовать |
|---|---|---|
| Referer | Страница URL, на которой обычно воспроизводится поток. | Используйте, когда источник отклоняет прямые запросы .m3u8 или возвращает 403. |
| User-Agent | Идентификатор клиента, отправленный в источник. | Используйте, когда источник разрешает браузеры, но отклоняет ботов или неизвестных клиентов. |
| Origin | Источник запрашивающего веб-приложения. | Обычно оставляйте это на усмотрение браузера или прокси; не подделывайте его, если вы не контролируете конечную точку. |
| Cookie | Состояние сеанса с исходного сайта. | Избегайте этого, если вы не являетесь владельцем рабочего процесса потока. Этот плеер не запрашивает файлы cookie. |
Как играть в M3U8 с пользовательским Referer
- 1
Найдите исходную страницу воспроизведения
Используйте страницу, на которой обычно работает поток, как Referer. Не используйте сам .m3u8 URL в качестве Referer.
- 2
Вставьте M3U8 URL
Вставьте манифест в проигрыватель и попробуйте воспроизвести один раз без пользовательских заголовков, чтобы установить базовый уровень.
- 3
Включить прокси CORS
Для пользовательской пересылки Referer и User-Agent требуется прокси-сервер, поскольку браузеры не позволяют сценариям страниц устанавливать эти заголовки при прямых медиа-запросах.
- 4
Установите Referer и User-Agent
Откройте расширенные элементы управления заголовком, вставьте исходную страницу URL как Referer и добавьте обычный настольный браузер User-Agent, только если источник фильтрует клиентов.
- 5
Запустите отчет о состоянии
Проверьте поток через тот же путь прокси/заголовка, чтобы увидеть, заблокированы ли по-прежнему манифест, ключи или сегменты.
Почему браузерные проигрыватели не могут установить Referer напрямую
Браузеры защищают такие заголовки, как Referer и User-Agent. Веб-страница не может свободно перезаписывать их для прямых запросов сегментов HLS. Вот почему этот инструмент пересылает пользовательские заголовки через дополнительный прокси-сервер: браузер обращается к прокси-серверу, а прокси-сервер обращается к источнику HLS с выбранными вами заголовками.
Какое значение Referer обычно работает
Используйте каноническую страницу URL, куда встроено видео, например https://example.com/watch/123. Не используйте домен CDN или .m3u8 URL, если это не та страница, которую ожидает источник. Если исходная страница перенаправляется, используйте последний URL, отображаемый в адресной строке браузера.
Как определить защиту хотлинка от CORS
CORS блокирует чтение ответа браузером. Защита хотлинков заставляет источник отклонять запрос, если заголовки не соответствуют его политике. Если прокси-сервер исправляет CORS, но источник по-прежнему возвращает 403, добавьте Referer. Если воспроизведение начинается после установки Referer, поток защищен хотлинком.
Связанные страницы отладки HLS
- HLS CORS ошибка объясняет, когда для заблокированных запросов браузера требуются заголовки CORS или прокси.
- M3U8 устранение неполадок со ссылками охватывает более широкий контрольный список ошибок для неработающих и защищенных ссылок.
Часто задаваемые вопросы
Могу ли я установить собственный Referer для потока M3U8?
Да. Включите прокси, откройте дополнительные элементы управления заголовком и установите страницу URL, на которой обычно воспроизводится поток, как Referer. Прокси-сервер пересылает этот Referer в источник HLS.
Почему браузер не может установить Referer напрямую?
Referer и User-Agent — защищенные заголовки запроса. Браузерный JavaScript не может свободно переписывать их для прямых медиа-запросов, поэтому для тестирования пользовательских заголовков требуется прокси-сервер, который пересылает заголовки на серверную сторону.
Какой Referer мне следует использовать для HLS, защищенного горячими ссылками?
Используйте исходную веб-страницу URL, куда встроен поток, а не .m3u8 URL. Многие источники проверяют эту страницу перед предоставлением манифестов, ключей или медиа-сегментов.
Должен ли я также изменить User-Agent?
Только если источник фильтруется по клиенту. Начните с Referer, затем добавьте обычный настольный браузер User-Agent, если поток по-прежнему отклоняется.
Работает ли пользовательский Referer с потоками, защищенными DRM?
Нет. Referer может помочь в защите хотлинков, но не обходит системы DRM, такие как Widevine, FairPlay или PlayReady.