Heim >Backend-Entwicklung >PHP-Tutorial >Wie erzwinge ich Dateidownloads in PHP, wenn es auf einem separaten Server gehostet wird?

Wie erzwinge ich Dateidownloads in PHP, wenn es auf einem separaten Server gehostet wird?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-20 21:17:19423Durchsuche

How to Force File Downloads in PHP When Hosted on a Separate Server?

Erzwingen von Dateidownloads in PHP, wenn sie auf einem separaten Server gehostet werden

Wenn Benutzern die Option „Diese Datei herunterladen“ bereitgestellt wird, insbesondere für Videos , ist es wichtig, den Download zu erzwingen, um die Wiedergabe im Browser zu verhindern. So können Sie dies in PHP erreichen, auch wenn die Videodateien auf einem anderen Server gespeichert sind:

<?php

// Set file details.
$file_name = 'file.avi';
$file_url = 'http://www.myremoteserver.com/' . $file_name;

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

// Initiate download.
readfile($file_url);

// Prevent further script output.
exit;

Dieses PHP-Skript konfiguriert die notwendigen Header, um den Browser zu zwingen, die Datei herunterzuladen, anstatt sie abzuspielen. Browser. Außerdem wird die Funktion readfile() verwendet, um die Datei vom Remote-Server abzurufen und auszugeben.

Hinweis: Um readfile() das Lesen von einer Remote-URL zu ermöglichen, stellen Sie sicher, dass fopen_wrappers aktiviert ist .

Das obige ist der detaillierte Inhalt vonWie erzwinge ich Dateidownloads in PHP, wenn es auf einem separaten Server gehostet wird?. 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