Это мои настройки:
Web Server: Apache/2.4.25
Web structure:
/
|__Video/
|__ test.mp4
|__play.php
В настоящее время я выставляю все свои видео на своем сервере, помещая непосредственно каталог видео в каталог apache.
Что я хочу получить, так этопереместите видео за пределы каталога Apache (предположим, нет проблем с разрешениями) и передайте только запрошенное видео через запрос GET в play.php
, например: GET play.php?req=test.mp4
В настоящее время я написал следующий код:
$name = $_GET['req']
header('Accept-Ranges: bytes');
header('Content-Length: ' . filesize($name));
header('Content-Type: ' . mime_content_type($name));
header('Content-Disposition: filename="'.$name.'"');
readfile($name);
exit;
Чего не хватает?Почему при попытке получить доступ к файлу с помощью play.php появляется сообщение «Нет поддерживаемых носителей видео»?Используя «mysite.com/Video/test.mp4», я могу без проблем обращаться к медиафайлам напрямую.
Я понял, что если я подожду достаточно долго, браузер полностью загрузит файл и воспроизведет его.Чего я не могу получить, так это потокового файла.