0

我尝试找到隐藏真实流媒体网址的好解决方案,我尝试使用 php,但以这种方式存在流问题,例如

http://site.com/player/stream.php?p=[file path]&f=filename.flv&t=<? echo md5(session_id().$_SERVER['REMOTE_ADDR'])?>

也许用 htaccess 重写 url 是更好的解决方案?像这样的东西

http://media.site.com/videos/0412/125843213/125843213.flv [org. file]

改写为

http://s1.media.site.com/0412/125843213.flv

..知道怎么做吗?或者也许更好地支持 php ...?

4

2 回答 2

1

在根目录中的 htaccess 文件中,或从您的 apache 配置中:

RewriteEngine On
RewriteBase /
RewriteRule ^videos/(\d+)/(\d+)/(\d+)\.flv$ http://s1.media.site.com/\1/\3.flv [R=301,L,QSA]

话虽如此,一旦您进行了重写,那么您想要隐藏的“真实网址”就成为了重写后的网址。您将能够使用任一 url 访问该文件。基本上,任何用户仍然可以访问访问文件的 URL 之一,因此它不再安全。

此外,由于主机更改,您将向服务器发送 2 倍的请求数。

使用重写的充分理由:

  • 搜索引擎优化
  • 单一入口点(如 CakePHP、CodeIgniter 等 - index.php)
于 2013-04-29T17:01:51.197 回答
0

将 iFrame 连接到服务器上的另一个 PHP 脚本,该脚本使用以下方式处理这些重定向:

header("Location: $php_url_var");
exit;

或 Javascript window.location 工作?

http://www.w3schools.com/js/js_window_location.asp

这似乎是您正在做的最简单的选择。如果你不熟悉,我可以提供一个例子。

于 2013-04-29T16:17:09.607 回答