laravel - Laravel,如何在没有符号链接的情况下从存储中获取文件?
问题描述
我的存储有问题。如何在没有符号链接的情况下从存储中获取文件?
当我尝试从文件存储中获取视频到 HTML 视频标签时,我得到了“禁止”或“不允许加载本地资源”。
控制器 :
$url = Storage::url($file);
return view('video')->with('url',$url);
HTML标签:
<video width="600" height="400" controls>
<source src="{{url($url)}}" type="video/mp4">
Your browser does not support the video tag.
Votre navigateur ne supporte pas le lecteur vidéo.
</video>
谢谢你的帮助 :)
解决方案
存储的想法是它可能驻留在您的网络服务器无法访问的地方,或者至少可以公开访问。它可能是一个文件夹,可能是 S3 存储,也可能是其他东西。
您需要做的是定义专门下载视频文件的路径。您可以在控制器代码中生成该路由的临时签名 URL:https ://laravel.com/docs/7.x/urls#signed-urls
将该签名的 URL 发送到视图。现在浏览器将从签名的 URL 加载视频。您需要创建路由和控制器功能以从存储中加载文件并将其发送到浏览器:https ://laravel.com/docs/7.x/filesystem#downloading-files
推荐阅读
- visual-studio - 为什么有时我无法在 Visual Studio 2017 中编辑逻辑应用属性?
- python - Odoo 10 - Many2one 过滤器 xml
- c++ - 是否可以在迭代期间添加数组中的元素?
- mysql - 从 Mysqlworkbench 连接到 MySQL 容器
- python - 编写函数以应用于 Pandas GroupBy
- ios - 更改 Xcode 故事板中的默认 customModule
- java - 如何将 ArrayList 转换为最终的 String 数组?
- windows - Makefile 未设置 GOOS 环境变量
- html - Boostrap 4:在一个
- java - 休息模板 - 如何在发送原始 POST 请求字符串之前检索它