我想"代理"位于远程服务器上的文件(让我们称之为服务器B)并从服务器A强制下载到访问者。
只有服务器A可以访问服务器B上的资源(受保护的IP地址)。资源的重量可以达到几千兆字节。
到目前为止,这是我的代码:
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.$filename);
header('Content-Transfer-Encoding: chunked');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
$stream = fopen('php://output', 'w');
$ch = curl_init($ruri);
curl_setopt($ch, CURLOPT_READFUNCTION, function($ch, $fd, $length) use ($stream) {
return fwrite($stream, fread($fd, $length));
});
curl_exec($ch);
curl_close($ch);
部分工作。
问题1:
问题2:
请注意: