【问题标题】:How To Prevent File HotLink from Internet Download Manager IDM如何防止来自 Internet Download Manager IDM 的文件 HotLink
【发布时间】:2013-01-09 11:06:25
【问题描述】:

在修复媒体文件热链接或使用 IDM 下载时遇到一些问题,我正在使用 PHP 提供视频文件并且工作正常,但我注意到安装在我的计算机上的 IDM 能够将下载框添加到我的视频中使用 jwplayer 播放。 我改了代码结构,加了htaccess重写链接,这样直接访问文件就不会显示了。

mysite.com/file.php?myvideo.flv -> mysite.com/api/file/JU78vhx5uh

我能够在 JWPlayer 中实现这一点,它在使用 PHP 服务时可以工作,但同一个 IDM 获取我的视频文件,我搜索其他方法是 htaccess,它在下面

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC]

RewriteCond %{HTTP_REFERER} !^$

RewriteRule .*\.(mp4|flv|mp4|mp3)$ /video/thieve.flv [L]

这仅适用于网络浏览器并且不会停止 IDM 软件,我找到了另一个 PHP 引用验证器,它检查引用链接。

if (strpos($_SERVER['HTTP_REFERER'],'mysite.com')===0)

 {
    header("Location: whatever.php"};
 }else{
    header("Location: index.php");
 }

注意:我发现 IDM 将此信息发送到我的脚本

  1. 用户代理:Mozilla/4.0%20(compatible;%20MSIE%208.0;%20Windows%20NT%206.0;%20Trident/4.0)

  2. Http_referer:mysite.com/api/file/JU78vhx5uh(和我视频播放的页面一样)。

请问我还有什么方法可以防止来自这个软件的热链接,因为这个网站提供免费视频流,我不想下载我的视频。

【问题讨论】:

  • 真的,不下载视频的唯一方法就是不提供视频,我会把时间花在更有成效的事情上......

标签: php .htaccess streaming hotlinking


【解决方案1】:

一般来说,阻止用户下载您的视频的唯一方法是真正通过服务器进行流式传输。通过显示已预加载的视频帧的“模拟流”将始终以一种或另一种方式“破解”,因为最终您需要播放器软件知道地址 - 这当然是完整的 .avi/.mp4/。随便。

有很多流媒体服务器,也有一些开源的。一个好的起点可能是this list。对于 Linux,Darwin 可能是最好的选择之一。

一旦您真正流式传输您的内容,只有非常高级的用户才能使用流式抓取器抓取您的内容(我认为甚至有些服务器无法使用,例如 Adob​​e 的流式传输解决方案)。

【讨论】:

  • 没错。此外,我个人能够抓取我看过的每一个流,包括最近的 Adob​​e 异国情调:)
  • 大多数时候,您并不需要成为黑客大师来抓取视频。你评论的Darwin流媒体服务器只是一个RT(S)P流媒体服务器,ffmpeg或者VideoLAN都可以轻松抓取
  • @arraintxo 是的,但我敢说,对于 98% 的用户来说,这已经是“魔法”了。另一方面,对于大多数人来说,使用一些 Firefox 插件视频下载器并单击“下载”是可行的。
  • 顺便说一句,采用真正的流媒体解决方案还可以为您节省流量。默认情况下,即使用户暂停,伪流视频也会被完全下载(Youtube 最近实施了停止该视频的技术),流将在 4 或 5 秒后自动停止(可以在服务器中设置)。
猜你喜欢
  • 1970-01-01
  • 2017-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-09
  • 2020-01-26
  • 2022-12-15
相关资源
最近更新 更多