请问如何让用户点了一个.avi文件的连接之后不是直接在线播放,而是下载?100,在线等

hba 2002-08-06 08:06:09
我做了一个连接,是一个avi文件,,
用户点了之后就出现 media player 播放了,这是用户在 media player 中右健之后选在属性,出现一个对话框,里面位置一项显示了来源 譬如: http://www.aa.com/1.avi
我是不想让用户知道位置,怎么办?我已经实现了用户在连接上选择目标save as之后隐藏连接,但是直接播放 media player 就都给暴露了,怎么版,

我请问,

有没有禁止用户载线播放的方法,我以前听说php可以用什么流下载,就可以了,怎么写啊



如何隐藏地址不让他在 media player 中显示出来?



avi 有没有不是流的格式,即使不下载,在线拨。也是伪在线,就是系统自动下载到临时目录,然后再临时目录拨,这样地址也隐藏了,

高手执教啊,,上面3种方法怎么实现啊,我用php,请给出php代码啊,,谢谢啦,,
帮帮我把
...全文
50 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiushuiwuhen 2002-08-12
  • 打赏
  • 举报
回复
稍作修改,勿怪,呵呵

echo "文件找不到";
=>
header("Status: 404 Not Found")

Header("Content-type: application/octet-stream");
=>
Header("Content-type: video/avi");

$file = fopen($file_dir . $file_name,"r"); // 打开文件
echo fread($file,filesize($file_dir . $file_name));
fclose($file);
=>
readfile($file_dir . $file_name);




qiushuiwuhen 2002-08-12
  • 打赏
  • 举报
回复


如何隐藏地址不让他在 media player 中显示出来?
darzui 2002-08-12
  • 打赏
  • 举报
回复
to:qiushuiwuhen(秋水无恨)
如果改成Header("Content-type: video/avi");,还是会调用客户端程序打开的吧,发送mime信息application/octet-stream是为了把avi当作未知类型的二进制文件.(apache server unleashed语)
darzui 2002-08-11
  • 打赏
  • 举报
回复
这里提供两种方法,试试看
1.apache方法
在httpd.conf中加一行

AddType application/octet-stream .avi


2.php方法

$file_name = "1.avi";
$file_dir = "/public/www/download/";
if (!file_exists($file_dir . $file_name))
{
//检查文件是否存在
echo "文件找不到";
exit;
}
else
{
$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;
}

21,886

社区成员

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

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