这是我用来点击此下载按钮的表格。
<form action="verify.php" method="post" target="_blank">
<input name="filename" type="hidden" value="media.mp4">
<input name="filesize" type="hidden" value="2.0GB"><p></p>
<div align="center">
<input alt="Download" src="Download-Button.png" type="image" width="225"></div>
</form>
使用此
在verify.php内部<?php $file = $_POST["filename"]; ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta http-equiv="refresh" content="5; url=download.php?file=<?php echo $file; ?>">
<title>Verify Page</title>
</head>
<body>
</body>
</html>
强制标题放在download.php
中<?php
$file = 'uploads/' . $_GET['file'];
if( !file_exists($file) ) die("File not found");
header('Content-Disposition: attachment; filename="' . basename($file) . '"');
header("Content-Length: " . filesize($file));
header('Content-type: video/mp4');
readfile($file);
?>
但是当涉及1GB或2GB以上的大文件时,它有时会产生500个内部错误,甚至有时文件少于500MB或更高,有时仍会产生以下错误:
无法访问此网站
网页 http://example.com/download.php?file=media.mp4 可能暂时停止或可能已永久移动到新的 网址。 ERR_INVALID_RESPONSE
我也增加了php.ini和Apache的内存限制。甚至尝试使用.htaccess来分配内存,但没有任何工作!请指导我该怎么办?或解决方案?