直接点击下载电影,怎样使占用的内存小?

snowcovered 2005-06-01 09:22:31
$file = fopen($file_dir . $file_name,"r");
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Accept-Length: ".filesize($file_dir . $file_name));
Header("Content-Disposition: attachment; filename=" . $file_name);
// 输出文件内容
echo fread($file,filesize($file_dir . $file_name));
fclose($file);
exit;

这样好像太占内存了
大点的电影就不行,无法显示该页...

不用右击另存为,有什么方法可以占用内存小的嘛?
...全文
1469 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ray929 2005-06-02
  • 打赏
  • 举报
回复
你有服务器的权限吗?
修改apache的头信息可能可以做到
zairwolf 2005-06-02
  • 打赏
  • 举报
回复
直接header。下载到哪里和你没有关系。是客户端的问题。
直接header也是可以防盗链的。每下载一次改一次名字,或者每天改一次。
snowcovered 2005-06-02
  • 打赏
  • 举报
回复

-_-这样的话就直接下载到临时文件夹了
loveconan 2005-06-02
  • 打赏
  • 举报
回复
每读一块flush一下
可能会好一些
snowcovered 2005-06-02
  • 打赏
  • 举报
回复
回复人: ray929(海豚) ( ) 信誉:100 2005-06-02 00:38:00 得分: 0


你有服务器的权限吗?
修改apache的头信息可能可以做到

===========================================
这样和在程序里改header不是一样嘛?不懂~哈


-------------------------------------------------------------------------
回复人: zairwolf(君子兰) ( ) 信誉:75 2005-06-02 12:29:00 得分: 0


直接header。下载到哪里和你没有关系。是客户端的问题。
直接header也是可以防盗链的。每下载一次改一次名字,或者每天改一次。

==========================================================================
这个更不懂~哈

我是放在局域网里的,不用考虑防盗链,这个可以用ip验证一下.
GaoXX 2005-06-02
  • 打赏
  • 举报
回复
回复人: ray929(海豚) ( ) 信誉:100
说详细点!
ray929 2005-06-01
  • 打赏
  • 举报
回复
你是想防盗链吗?
用php读文件再写出来对于电影这类体积的文件来说
简直是#$#@%$%#@$

如果你要高效率
用header转向最简单,最快
header("location:path/to/aaa.avi");
但是这样无法防盗链的

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧