Heim  >  Artikel  >  Backend-Entwicklung  >  Wie erzwinge ich Datei-Downloads in PHP vom Remote-Speicher?

Wie erzwinge ich Datei-Downloads in PHP vom Remote-Speicher?

Susan Sarandon
Susan SarandonOriginal
2024-11-15 01:46:02525Durchsuche

How to Force File Downloads in PHP from Remote Storage?

Erzwingen von Dateidownloads in PHP mit Remote-Dateispeicherung

So fügen Sie einer Website die Funktion „Diese Datei herunterladen“ hinzu und verhindern gleichzeitig die direkte Wiedergabe in Ziehen Sie im Browser die folgende PHP-Lösung in Betracht:

// Locate the remote file.
$file_name = 'file.avi';
$file_url = 'http://www.myremoteserver.com/' . $file_name;

// Configure the download settings.
header('Content-Type: application/octet-stream');
header('Content-Transfer-Encoding: Binary');
header('Content-disposition: attachment; filename="' . $file_name . '"');

// Download the remote file content.
readfile($file_url);

// Ensure no output follows the download.
exit;

Zuerst lokalisiert das PHP-Skript die Remote-Datei und richtet die erforderlichen HTTP-Header ein, um einen Download zu erzwingen statt Wiedergabe.

Das Skript verwendet die Funktion readfile(), um den Inhalt der Remote-Datei abzurufen. Beachten Sie, dass die Einstellung „fopen_wrappers“ aktiviert sein muss, damit PHP Remote-URLs lesen kann.

Schließlich wird das Skript beendet, um weitere Ausgaben zu verhindern, die den Download-Vorgang beeinträchtigen könnten.

Das obige ist der detaillierte Inhalt vonWie erzwinge ich Datei-Downloads in PHP vom Remote-Speicher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn