2011-10-18 63 views
1

我有一个用户购买包和观看视频教程的网站。不幸的是,该网址可从HTML获得,因此用户可以从该位置轻松下载。我想阻止用户下载该文件,他应该只能从我的页面上观看。阻止用户下载视频

有没有办法做到这一点在ASP.NET或可能通过配置IIS?

+7

从理论上讲,你不能。在实践中,你可以让它更难一点。 – CodesInChaos

+2

可能会很方便http://stackoverflow.com/questions/1294501/how-to-prevent-downloading-images-and-video-files-from-my-website –

回答

0

简短回答,

较长的答案,它取决于你的目的有两种可能性。

如果你想阻止人们将他们的视频嵌入他们的网站(因此使用你的带宽),问题类似于热链接图像。这涉及诸如检查引用者(不是所有的用户代理提供一个)。另一种选择是为视频用户制定特定的URL,例如临时URL超时,在URL中嵌入反csrf标记,检查是否匹配cookie等。

如果要防止用户下载实际视频,则不能,请参阅How to prevent downloading images and video files from my website?How to prevent user from downloading or saving an image?

1

即使您隐藏了网址或添加了令牌查看功能,也总能通过视频下载插件下载视频。

3

正如您发现的那样,如果您通过网址制作视频(或其他任何内容),它将可以下载。

另一种方法是创建一个ASP.NET页面,检查用户是否已正确登录,然后重定向到该文件 - 而不会泄露该URL。没有直接链接提供视频的其他方式是将其嵌入(或访问它)到像Java或Flash那样编译的东西中。

无论您选择什么解决方案,不透露网址 - 或首先不让视频直接访问互联网 - 将成为关键。一旦URL可用,它便于下载。

仅供参考,世界上有很多视频捕获器。即使您隐藏了网址,他们也可以在某种程度上“下载”它。

1

这个问题的答案只是没有。您无法阻止用户的视频下载。可以看到您的视频的人可以通过使用不同的下载程序或直接链接来获得您的视频,如果您尝试以其他方式阻止它,用户可以使用Camstudio或getcam等屏幕捕获软件来窃取视频。

因此,你不能通过任何方式做到这一点。你可以用一种方法做到这一点,但它不准确,HotLink protection。保护那些你不希望被用户下载的文件扩展名。

希望这会有所帮助。

+0

很好的答案,并祝贺有最好的用户名。 – nmit026