我有一个流媒体视频的应用程序,该视频存储在AWS S3(Youtube类型)中。它可以在Laravel 5.7,Ubuntu 18.04上运行,并且我已经成功地使用带有S3 Laravel文件系统的本机PHP流式传输了文件。
到目前为止:
$s3 = \Storage::disk('s3');
$contentType = "video/mp4";
//header("Content-Type: application/octet-stream");
// downloads the file
$file = $s3->url("/uploads/SOMEFOLDER/videofile.mp4");
$handler = fopen($file, 'rb');
header('Content-type: '.$contentType);
while (!feof($handler)) {
print fread($handler, 1024);
}
fclose($file);
exit;
唯一的问题是,由于fseek函数不支持远程URL,因此无法找到想要的位置。
现在,there is the Amazon S3 seekable stream functionality,显然可以做到。
我收到此错误消息:
fopen(): Unable to find the wrapper s3 - did you forget to enable it when you configured PHP?
有人这样做吗?