如何下载非常大的视频文件而不是使用 PHP 在浏览器中播放
How to download a very large video file instead of playing in browser with PHP
我制作了一部电影,并将其另存为 MP4 文件并上传到我的服务器。该文件为 4.6 GB。当我尝试向家人发送 link 时,视频会尝试在他们的浏览器中播放。
我想要做的是让他们单击 link,然后文件会下载到他们的计算机上。我一直在寻找解决方案,但他们总是失败,可能是由于文件的大小。
有没有人可以提供 PHP 允许下载这么大文件的脚本?
谢谢
最简单的解决方案是按 Ctrl+S、select 文件>保存 或执行 当文件开始加载时,右键单击并在浏览器中另存为 - 这将打开保存文件对话框。
如果您想从 PHP return 这个文件,您可以使用以下脚本:
<?php
$file = 'video.mp4';
if (file_exists($file)) {
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
}
我制作了一部电影,并将其另存为 MP4 文件并上传到我的服务器。该文件为 4.6 GB。当我尝试向家人发送 link 时,视频会尝试在他们的浏览器中播放。
我想要做的是让他们单击 link,然后文件会下载到他们的计算机上。我一直在寻找解决方案,但他们总是失败,可能是由于文件的大小。
有没有人可以提供 PHP 允许下载这么大文件的脚本?
谢谢
最简单的解决方案是按 Ctrl+S、select 文件>保存 或执行 当文件开始加载时,右键单击并在浏览器中另存为 - 这将打开保存文件对话框。
如果您想从 PHP return 这个文件,您可以使用以下脚本:
<?php
$file = 'video.mp4';
if (file_exists($file)) {
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
}