0

我目前正在寻找一种方法来保护本地广播电台的音频流,该广播电台为我提供了基于 IP 地址的无线电广播的实时 WMA 流(不是确切的 IP,但格式为:

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

由于他们的许可限制,他们无法公开向用户提供流 URL 以供收听。

然而,这个电台直播了一场本地 OHL 曲棍球队比赛,这打破了电台的许可节目,所以我们希望能够提供一个我们可以启用/禁用的链接,让人们可以收听这个流,不知道 24/7 活动的流的确切 IP 地址/URL。

这是否可以通过 PHP 基本上读取流文件并将其传递给用户,而无需他们知道流音频的实际 URL?我过去使用静态文件完成了此操作,但无法通过我通常使用的正常文件内容和标头传递方法使其工作。

4

3 回答 3

1

一种选择是创建一个指向您的隐藏地址的 dyndns.org dns 条目,以便只提供 dyndns,当您不希望侦听器时,只需针对 dyndns.org 运行脚本,将其关闭或指向一个未知的ip。没有任何东西被缓存,也没有造成任何伤害。

我们这样做是为了防止机动车检查站将我们的 dns/ip 地址缓存到我们的服务器。当我们想切换到另一台负载平衡机器时,我们只需运行一个脚本来更新 dyndns 主机,而客户端只需访问相同的域名。自 2007 年开始工作,至今仍在使用。

于 2012-09-27T17:22:23.623 回答
0

您可以随时检查请求的来源。只需使用本机 PHP$_SERVER并注意$_SERVER['HTTP_REFERER'].

虽然这并不能为您提供您想要的所有控制权,但它绝对是一个起点。

注意:正如@PeeHaa 已经说过的 - »一切都可用«。你只需要一个有能力达到它的人。

于 2012-09-27T16:54:42.720 回答
0

是的,您可以使用 php readfile()。你给用户一个 php 文件的链接,php 文件的输出是流音频。您只需要指定正确的标头来告诉浏览器您正在发送什么并且它应该可以工作。

手册应该给你一些例子: http: //php.net/manual/en/function.readfile.php

于 2012-10-02T22:05:47.537 回答