PHP CURL 获取远程数据下载

$url="http://$host/a/j/readdata.jsp?sid=$sid&mid=181:1tbitRse9EX9ctDopQAAsT&part=3&mo... $url="http://$host/a/j/readdata.jsp?sid=$sid&mid=181:1tbitRse9EX9ctDopQAAsT&part=3&mode=download";

header("Content-type: application/octet-stream");
header ("Content-Length: 2480568" );
header("Content-Disposition: attachment; filename=broken me.tube.mp3");

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_COOKIEFILE,$cookie);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
curl_exec($ch);
curl_close($ch);

$url文件不是在自己服务器上。
别人访问下载 $url 文件时,
文件下载速度受 我的服务器 主机的速度。
这样是不是说明下载文件是用我那主机宽带的。
要怎么改代码才可以 直接下载 $url 文件就可以,,(下载文件必须登陆 带上 $cookie 才可以下载的。)不受我的主机宽带速度影响。。

满意还可以加分..
阳光上的桥
$url 不是我的站点。是别人的。
我要先登陆 $url获取他的 cookie ,
在用 Curl 发送cookie 下载文件 。

我也不想一直登陆着,一直登陆着的话下载者要是登陆了 $url ,,那他就登陆我的帐号了.
展开
 我来答
阳光上的桥
2010-01-13 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65810
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
这慧芹培样做肯定是用的你的带宽,是把文件下载到你的服务器上,然后再下载给客户端。

有两条路你可以去试试看,我没做过:一是setcookie指定域名是那个网站,然后转向:
setcookie ($cname ,$cvalue ,$expire ,$path , $host);
header('location: $url");

另外一个方法类似,好像有个P3P可以传递COOKIE,需要你自己查资料:
setcookie ($cname ,$cvalue);
header('P3P: ....');
header('location: $url");

第二个办法应该是可以的,陶宝和开心网都在用这样的技术,陶宝有许多域名,一次前唯登录后都可以使用,就是利用P3P实现的COOKIE传递首备。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式