PHP - защита аудио потока WMA

В настоящее время я ищу способ защиты аудиопотока от местной радиостанции, которая предоставила мне живой WMA-поток на основе IP-адреса своей радиопередачи (не точный IP-адрес, но в формате:

http://199.101.51.121:2013
mms://191.101.51.121:2013

Из-за своих лицензионных ограничений они не могут публично предоставлять потоковый URL пользователям для прослушивания.

Эта станция, однако, транслирует локальные игры хоккейных команд OHL, что выходит за рамки лицензионного программирования станции, поэтому мы ищем возможность предоставить ссылку, которую мы можем включить / отключить, что позволит людям слушать этот поток, не зная точного IP-адреса /URL-адреса потока, который активен 24/7.

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

3 ответа

Одним из вариантов может быть создание dns-записи dyndns.org, которая указывает на ваш скрытый адрес, так что обслуживаются только dyndns, а когда вы не хотите, чтобы слушатели просто запускали скрипт для dyndns.org, который отключал его или указывал на неизвестный ip. Ничто не кэшируется и не причиняет вреда.

Мы сделали это для предотвращения кэширования нашими инспекционными станциями наших DNS-адресов и IP-адресов на нашем сервере. Когда мы хотели переключиться на другую машину с балансировкой нагрузки, мы просто запустили скрипт, который обновил хост dyndns, и клиенты просто получили одно и то же доменное имя. Работал с 2007 года и до сих пор используется сегодня.

Вы всегда можете проверить, откуда поступил запрос. Просто используйте родной PHP $_SERVER и высматривать $_SERVER['HTTP_REFERER'],

Хотя это не дает вам полный контроль, который вы хотите иметь, это определенно отправная точка.

Примечание: как уже говорилось @PeeHaa - "Все доступно". Вам просто нужен тот, у кого есть навыки, чтобы достичь этого.

Да, вы можете использовать php readfile(). Вы даете пользователю ссылку на php-файл, и на выходе php-файла идет потоковое аудио. Вам просто нужно указать правильные заголовки, чтобы сообщить браузеру, что вы отправляете, и это должно работать.

Руководство должно дать вам несколько примеров: http://php.net/manual/en/function.readfile.php

Другие вопросы по тегам