【问题标题】:Routing a download through server; PHP settings通过服务器路由下载; PHP 设置
【发布时间】:2011-09-23 15:53:48
【问题描述】:

我正在尝试从我们的视频主机 Ooyala 下载视频源文件,但这些文件的文件名很长,没有描述性,并且没有扩展名。由于这些文件将被许多不同类型的人下载,我想解决这个问题,所以我使用以下代码设置标题并将文件读取到输出缓冲区:

ini_set('max_execution_time', 7200);
header('Content-Length:'.$video_file_size);
header('Content-type: binary/octet-stream');
header('Content-Disposition: attachment; filename=movie.'$video_file_extension);
readfile($video_url);

我假设这样的脚本将在整个下载过程中“运行”,所以我使用 ini_set 将“max_execution_time”设置为 7200,一切正常。所以现在我只是想知道我是否应该采取任何其他预防措施?也许是最大内存或其他什么?

谢谢!

【问题讨论】:

    标签: php http-headers download remote-file-inclusion


    【解决方案1】:

    所以每个人都有一个可以以至少 94k/s (690+meg at 7200s) 传输文件的链接?每传输一个视频,您的带宽费用就会翻倍。由于您指定的是固定大小,因此电影文件似乎没有变化,那么简单地在服务器上缓存一个副本不是更有意义吗?

    进行缓存将 net.burp 杀死下载的机会减少了一半,因为只涉及 you->user 链接,而不涉及 host->you->user。

    【讨论】:

    • 谢谢,但文件会不断变化。用户将上传和下载到一个库,我认为在主机可用时存储所有可用视频的缓存(这是我们为它们付费的)效率不高。不过谢谢,我更新了代码以防止进一步混淆。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多