Access-Control-Allow-Origin

HLS CORS Ошибка: почему M3U8 потоки не работают в браузере

Ошибка HLS CORS возникает, когда браузеру не разрешено получать манифест M3U8, ключ шифрования или медиа-сегменты из другого источника. Поток по-прежнему может воспроизводиться в VLC, поскольку CORS — это правило браузера, а не правило мультимедиа. Чтобы протестировать поток онлайн, используйте источник с поддержкой CORS или направьте запросы HLS через прокси.

Последнее обновление: June 20, 2026

Воспроизведение, история, избранное, субтитры и преобразование браузера остаются на этом устройстве. Запросы HLS проходят через прокси-сервер только при включении прокси-сервера CORS.

Умный CORS прокси

Используйте прокси-сервер Cloudflare Worker для манифестов, ключей и сегментов, когда прямое воспроизведение в браузере заблокировано.

Предварительный просмотр видео

Ссылка на отчет о состоянии

Анализируйте варианты, битрейт, продолжительность сегмента, шифрование и статус активности/VOD, а затем выбирайте медиасегменты на предмет неработающих ссылок. Проверки сегментов ограничены CORS браузера, поэтому для получения наиболее точных результатов включите прокси-сервер.

Как распознать неисправность CORS

ПроверятьСимптомЗначение
Манифест заблокированЗапрос .m3u8 завершается неудачей до начала воспроизведения.Источнику нужен Access-Control-Allow-Origin или игроку нужен прокси.
Ключ заблокированМанифест загружается, но зашифрованное воспроизведение не выполняется.Ключ AES-128 URL также должен разрешать CORS или маршрутизацию через тот же прокси-сервер.
Сегменты заблокированыВоспроизведение начинается, затем буферизуется или останавливается.Для каждого запроса сегмента .ts или .m4s требуется один и тот же путь CORS.
VLC работает, браузер не работаетВоспроизведение на рабочем столе работает, а воспроизведение через Интернет — нет.Обычно это подтверждает проблему CORS браузера, а не прерванный поток.
Предполетная проверка не удаласьПользовательские заголовки запускают запрос OPTIONS, который источник отклоняет.Избегайте ненужных заголовков или настройте прокси/источник для обработки ОПЦИИ.

Как исправить или проверить ошибку HLS CORS

  1. 1

    Проверьте, загружается ли манифест

    Откройте M3U8 URL или вставьте его в плеер. Если запрос манифеста заблокирован CORS, воспроизведение даже не может начаться.

  2. 2

    Сравните с VLC

    Если VLC может воспроизводить тот же URL, но браузер не может, поток, вероятно, доступен, и ошибка связана с контролем доступа браузера.

  3. 3

    Включите умный прокси CORS

    Включите прокси-сервер, чтобы манифесты, ключи шифрования и медиа-сегменты передавались через ответ, который мог прочитать браузер.

  4. 4

    Запустите отчет о состоянии

    Используйте валидатор через прокси-сервер, чтобы проверить, действительно ли сегменты активны, а не просто заблокированы CORS.

  5. 5

    Добавляйте Referer только при необходимости.

    Если источник использует защиту хотлинков, установите исходную страницу URL как Referer. Не добавляйте собственные заголовки, если этого не требует источник.

Почему HLS требует CORS более чем для одного URL

Проигрыватель HLS не извлекает только один файл. Он извлекает главный манифест, один или несколько списков воспроизведения мультимедиа, ключи шифрования для потоков AES-128 и множество сегментов URL. Один-единственный отсутствующий заголовок CORS на любом из этих ресурсов может привести к сбою воспроизведения, поэтому тестирования только первого ответа .m3u8 недостаточно.

Что должен делать Access-Control-Allow-Origin

Для общедоступных потоков источник может отправить Access-Control-Allow-Origin для сайта, на котором размещен проигрыватель, или использовать подстановочный знак, если учетные данные не задействованы. Для частных потоков держите источник заблокированным и используйте для тестирования контролируемую конечную точку прокси. Избегайте смешивания прямых и проксируемых URL в одном сеансе HLS.

Почему прокси полезен для отладки

Прокси позволяет браузеру запрашивать ресурсы HLS из вашего собственного разрешенного источника, в то время как прокси извлекает реальный манифест, ключ и сегмент URL. Это позволяет определить, поврежден ли поток или просто заблокирован политикой браузера. Это также дает вам одно место для добавления Referer или User-Agent, если их требует источник.

Часто задаваемые вопросы

Что вызывает ошибку HLS CORS?

Ошибка HLS CORS возникает, когда браузер не может прочитать манифест M3U8, ключ шифрования или медиа-сегменты, поскольку источник не разрешает доступ между источниками. VLC по-прежнему может воспроизводить поток, поскольку CORS применяется браузерами.

Почему мой поток M3U8 воспроизводится в VLC, но не в Chrome?

VLC не ограничен проверками браузера CORS. Если VLC работает, а Chrome дает сбой, поток обычно доступен, но браузер не может прочитать один или несколько запросов HLS без заголовков CORS или прокси-сервера.

Может ли прокси-сервер CORS исправить воспроизведение M3U8?

Да, для тестирования и отладки. Прокси-сервер должен маршрутизировать манифест, списки воспроизведения мультимедиа, ключи и сегменты так, чтобы каждый запрос HLS исходил из источника, который браузеру разрешено читать.

Нужны ли сегментам HLS заголовки CORS?

Да. Манифест, дочерние списки воспроизведения, ключи и каждый медиа-сегмент должны быть доступны для чтения браузером. Поток может завершиться неудачно, даже если файл .m3u8 верхнего уровня имеет правильные заголовки CORS.

Это то же самое, что защита от хотлинков?

Нет. CORS — это правило доступа браузера. Защита хотлинков — это правило происхождения, для которого могут потребоваться определенные Referer или User-Agent. Некоторые потоки имеют обе проблемы, поэтому вам может понадобиться прокси-сервер и соответствующий Referer.

Что такое файл M3U8?HLS основы плейлистовHLS против M3U8Протокол против плейлистаM3U8 против M3UСравнение форматов плейлистовHLS Устранение неполадокCORS, 403, ключи, мертвые сегментыM3U8 Ссылка не воспроизводится?CORS, Referer, мертвые сегментыM3U8 403 ЗапрещеноПодписанные URL и блоки хотлинковПользовательский Referer M3U8 PlayerПотоки, защищенные хотлинкомM3U8 Ключ не загружаетсяAES-128 доступ по ключуОт M3U8 до MP4, без загрузкиПреобразование FFmpeg браузераHLS Видео ТриммерЭкспорт клипа из браузераM3U8 Онлайн-загрузчикЭкспорт HLS браузераОт M3U8 до MP3, без загрузкиЛокальное извлечение аудиоHLS Тестер потокаОнлайн HLS диагностикаM3U8 Player С субтитрамиSRT и WebVTT субтитрыЗашифрованный M3U8 PlayerAES-128 HLS тестированиеIPTV Плейлист не работает?M3U ремонт каналаБесплатные плейлисты IPTVНайдите легальные публичные списки M3UM3U8 ВстроитьВстраиваемый проигрыватель HLSHLS Анализатор лестниц ABRПроверка лестницы битрейтаHLS Манифест различияСравните два плейлиста M3U8Онлайн-сравнение M3U8 PlayerИнструменты браузера, VLC и CLIm3u8-player.net АльтернативаЛичные встречи без рекламыVLC против онлайн M3U8 PlayerРабочий стол против браузераОнлайн-сравнение редакторов IPTV M3UИграй и редактируй против генеральных уборщиков