我正在尝试从不是直接链接的URL下载视频,而是强制下载的链接。现在我想将其下载到我的服务器并使用ffmpeg进行转换。 (我已经知道如何做这部分了)
所以我的问题是,如何通过php从间接链接下载文件?
答案 0 :(得分:5)
您的意思是服务器重定向您吗?
使用CURL完成PHP中的下载并使用CURLOPT_FOLLOWLOCATION
选项。
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "www.mywebdownloadurl.com/dl?id=someId");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); // Videos are needed to transfered in binary
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // That's the clue!
$result = curl_exec($ch); // $result will have your video.
curl_close($ch);
?>