Я использую сервер nginx, у которого в основном один пустой каталог "image" и скрипт 404.php.
Каждый раз, когда пользователь запрашивает изображение с сервера nginx, например, "www.example.com/image / 12312.png ", сервер nginx загружает образ с s3, сохраняет его под конкретным именем и обслуживает его .Затем, когда в следующий раз запрашивается то же изображение, его больше не нужно загружать, поскольку оно уже находится на сервере (и, таким образом, сценарий 404 больше не запускается, что означает, что он непосредственно обслуживает изображение).
Надеюсь, вы понимаете основную картину.По сути, это зеркальное отображение мультимедийного контента и его немедленная .Теперь полужирная часть - это то, что я сейчас не могу понять, как решить - все остальное, кроме этой части, работает отлично!
Я предполагаю, что это потому, что сервер nginx отправляет ответ 404 покартинка, которая не отображает картинку.Я должен заставить посетителя перезагрузить страницу при первом запросе файла, что очень хлопотно.
У вас есть идеи, как я могу решить эту проблему?
Вот мой текущийкод для отображения изображения (или видео в данном случае) в псевдокоде:
404.php
// Get requested file
$requestedFile = $_SERVER["REQUEST_URI"];
$localFile = $requestedFile
$remoteFile = "s3.example.com/".$requestedFile
// Download and store file from s3
file_put_contents($remoteFile, $localFile);
// Serve the stored file
// THIS PART IS WHERE I ENCOUNTER PROBLEMS - THE VIDEO IS NOT BEING DISPLAYED!
header('Content-Type: video/mp4');
header('Accept-Ranges: bytes');
header('Content-Length:'.filesize($localFile));
readfile($localFile);
Надеюсь, вы понимаете, что я пытаюсь сделать, ив чем именно проблема.В противном случае я могу дать вам больше информации.