0
により、ブラウザで表示可能な作られたファイルのダウンロード:ヘッダを使用して、ページ上に表示されたファイルがあるとしヘッダ
header("Content-Length: " . filesize($file));
header("Content-type: application/pdf");
header("Content-disposition: inline");
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
私はカールかのfile_get_contents、または任意でを使用して、外部からそのファイルをダウンロードすることができますどのように他の方法?
私はこれを試してみましたが、それは空のファイルダウンロード:私は(のfile_get_contentsを使用して実験し
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, $url); //specify the url
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$head = curl_exec($ch);
header('Content-Disposition: attachment; filename="' . basename($url) . '"');
header("Content-Length: " . $url);
header("Content-Type: application/octet-stream");
を)それはとにかく、おそらく間違った方法です。
誰でも手助けできますか?
ありがとうございます!これが正しい間に私はまだ私の問題を解決していません。私はまだ空のファイルをダウンロードしています。 誰かが "Content-disposition:inline"ファイルをダウンロードする方法を知っていれば、助けてください! – Ivannnnn
私の例では、curlコマンドを使ってフェッチしようとすると、$ bodyは空ですか?その場合、ソースファイル自体に問題がある可能性があります(直接ブラウザ経由でソースファイルを取得することは可能でしょうか?)。さらに、CURLOPT_HEADERをtrueに設定して、print_rのレスポンス(私の例では$ body)を試すことができます。もっと詳しい情報があるかもしれません。そして最後に - Webサーバーのエラーログを確認します。何か問題が発生する可能性のあるヒントが見つかることもあります –