记一次使用 AetherUpload 视频上传过程
说明
AetherUpload 是提供超大文件上传的 laravel 扩展包,带百分比进度显示,支持断点续传,支持自定义中间件,基于 laravel 5 开发。
我们知道,在以前,文件上传采用的是直接传整个文件的方式,这种方式对付一些小文件是没有问题的。而当需要上传大文件时,此种方式不仅操作繁琐,需要修改 web 服务器和后端语言的配置,而且会大量占用服务器的内存,导致服务器内存吃紧,严重的甚至传输超时或文件过大无法上传。很显然,普通的文件上传方式已无法满足现在越来越高的要求。\
随着技术的发展,如今我们可以利用 HTML5 的分块上传技术来轻松解决这个困扰,通过将大文件分割成小块逐个上传再拼合,来降低服务器内存的占用,突破服务器及后端语言配置中的上传大小限制,可上传任意大小的文件,同时也简化了操作,提供了直观的进度显示。本人laravel版本 5.7。
用法
0) 在终端内切换到你的 laravel 项目根目录,执行 composer require peinhu/aetherupload-laravel dev-master
1) 在 config/app.php
的 providers
数组中添加一行 AetherUpload\AetherUploadServiceProvider::class,
2) 执行 php artisan vendor:publish
来发布一些文件和目录
3) 赋予上传目录相应权限,在项目根目录下,执行 chmod 755 storage/app/uploads -R
4) 在浏览器访问 http://域名/aetherupload
可到达示例页面
提示:更改相关配置选项请编辑 config/aetherupload.php
。
安装成功后,把代码复制到需要上传的页面
提示:代码路径 \vendor\peinhu\aetherupload-laravel\views\example.blade.php
上传报错AetherUpload\UploadController::validate does not exist
, AetherUpload\UploadController::validate不存在
因为UploadController.php
文件有validate验证,验证上传文件/视频一些必要参数
我给注释掉了
文件路径\vendor\peinhu\aetherupload-laravel\src\UploadController.php
文件/视频上传路径\storage\app
下,而我想要上传到\storage\app\public
下
需要改动一个文件(文件名称PartialResource.php)
第一个改动如下
第二个改动如下
文件路径\vendor\peinhu\aetherupload-laravel\src\PartialResource.php
为storage创建软连接
命令php artisan storage:link
访问public/storage文件夹可以直接访问到视频/文件上传路径,即\storage\app\public
文件夹
本作品采用《CC 协议》,转载必须注明作者和本文链接
Peinhu\AetherUpload\AetherUploadServiceProvider::class not found 是我下载的包有问题吗
你好。有个问题请教一下
1.我想把上传的文件保存到项目根目录的public下
2.我想要获取到文件的上传的原来文件名
求大神赐教
第二个页面更改
PartialResource.php
页面 路径\vendor\peinhu\aetherupload-laravel\src\PartialResource.php
config/filesystems.php
下的名字一致 这是该页面第一个改动 ,第二个改动如下第三个改动如下
获取原来的文件名呢