【问题标题】:Limit Download connections Apache限制下载连接 Apache
【发布时间】:2012-12-17 00:31:30
【问题描述】:

我正在启动一个附属计划,并且我正在提供托管的 flv/mp4 文件作为促销工具。

因此将这些视频文件提供给数百名冲浪者。

我的问题是我如何限制这些文件的连接,我知道它到底在说什么,但是类似于 禁用分段下载

所以当用户使用下载管理器时,它不会使用下载恢复选项启动多个连接。

所以我的文件只能缓慢地提供给 Flash 视频播放器。

就像使用下载管理器从某些服务器下载文件时,它显示“不支持恢复”并且只有一个连接下载文件。

这可以用 apache 完成吗?如果是,那它叫什么?

我正在使用 apache 来提供文件

希望这可以清除我正在寻找的东西。, 谢谢

【问题讨论】:

  • 多部分同时下载文件..

标签: apache download-manager


【解决方案1】:

好的,我在这里找到了解决方案

http://www.apachelounge.com/viewtopic.php?p=9754

在 .htaccess 中添加它就可以了

Header set Accept-Ranges none
RequestHeader unset Range 

希望这对寻找相同解决方案的人有所帮助。

【讨论】:

  • 感谢您的提示。我想知道例如他们可以为同一个 mp4 或 mp3 文件打开多少个连接。 2? 5? 10? 30?
【解决方案2】:

您可以使用 mod_rewrite + mod_headers 来做这两件事(两者都带有 Apache)-

A.禁用段(字节范围)下载。

B.阻止下载管理器启动的多个连接。

进入目录的 .htaccess 文件,尝试放置这个配置:

Header set Accept-Ranges none
RewriteCond %{HTTP:Range} !^$
RewriteRule .* - [F,L]

这将简单地删除任何请求文件部分(而不是整个文件)的内容。

*您需要确保上述模块已加载,Rewrite Engine 处于开启状态,并且上述指令已启用以在 htaccess 上下文中使用。

更全面的配置和解释见Blocking Download Managers and Accelerators

【讨论】:

    【解决方案3】:

    它可以用 apache 完成,但你必须编写自己的模块。您最好的选择是通过 PHP 或您使用的任何前端提供视频文件。然后当有人观看视频时,您创建一个会话并将其与他们的 ip 一起放入数据库中。如果在该视频的前一个会话仍在数据库中时再次加载该视频,则您拒绝连接。

    【讨论】:

    • 这很复杂,如果你问加上通过 php 提供文件会导致更多的服务器负载,我会更多地研究通过 lighttpd 提供静态文件
    • 你要做的项目不是很复杂。编程也不难。此外,如果做得巧妙,您将不会造成任何过度负载。顺便说一句,除非您编写自己的模块,否则即使通过 lighttpd 也无法做到这一点。
    猜你喜欢
    • 2017-10-31
    • 1970-01-01
    • 2012-07-30
    • 2014-02-27
    • 1970-01-01
    • 1970-01-01
    • 2014-11-26
    • 2011-06-25
    • 1970-01-01
    相关资源
    最近更新 更多