別のサーバーから自分のサーバーにファイルをダウンロードして保存していますが、ダウンロードしているファイルにはアクセス トークンが添付されています。
http://www.example.com/video.mp4?versionId=c_.Qeh.dz.zqPA3zc57HFDKEAmKG3xr2
以下を読み込むと、パーミッション エラーが発生します。
http://www.example.com/video.mp4
問題は、次のコードで cURL を実行したときです。
$url = 'http://www.example.com/video.mp4?versionId=c_.Qeh.dz.zqPA3zc57HFDKEAmKG3xr2';
$fh = fopen(basename($url), "wb");
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_FILE, $fh);
curl_exec($ch);
curl_close($ch);
ファイルは video.mp4?versionId=c_.Qeh.dz.zqPA3zc57HFDKEAmKG3xr2 (トークン付き) として保存され、video.mp4 ではありません。
ここでの解決策は何ですか?私は試した
rename(video.mp4?versionId=c_.Qeh.dz.zqPA3zc57HFDKEAmKG3xr2, video.mp4)
ただし、ファイル名が必要であり、アクセストークンがそれを妨げています。