使用 AetherUpload 視頻上傳過程

說明

AetherUpload 是提供超大文件上傳的 laravel 擴展包,帶百分比進度顯示,支持?jǐn)帱c續(xù)傳,支持自定義中間件,基于 laravel 5 開發(fā)。

我們知道,在以前,文件上傳采用的是直接傳整個文件的方式,這種方式對付一些小文件是沒有問題的。而當(dāng)需要上傳大文件時,此種方式不僅操作繁瑣,需要修改 web 服務(wù)器和后端語言的配置,而且會大量占用服務(wù)器的內(nèi)存,導(dǎo)致服務(wù)器內(nèi)存吃緊,嚴(yán)重的甚至傳輸超時或文件過大無法上傳。很顯然,普通的文件上傳方式已無法滿足現(xiàn)在越來越高的要求。

隨著技術(shù)的發(fā)展,如今我們可以利用 html5 的分塊上傳技術(shù)來輕松解決這個困擾,通過將大文件分割成小塊逐個上傳再拼合,來降低服務(wù)器內(nèi)存的占用,突破服務(wù)器及后端語言配置中的上傳大小限制,可上傳任意大小的文件,同時也簡化了操作,提供了直觀的進度顯示。本人 laravel 版本 5.7。

用法

0) 在終端內(nèi)切換到你的 laravel 項目根目錄,執(zhí)行 composer require peinhu/aetherupload-laravel dev-master

1) 在 config/app.php 的 providers 數(shù)組中添加一行 PeinhuAetherUploadAetherUploadServiceProvider::class,

2) 執(zhí)行 php artisan vendor:publish 來發(fā)布一些文件和目錄

3) 賦予上傳目錄相應(yīng)權(quán)限,在項目根目錄下,執(zhí)行 chmod 755 storage/app/uploads -R

4) 在瀏覽器訪問 http://域名/aetherupload 可到達示例頁面

提示:更改相關(guān)配置選項請編輯 config/aetherupload.php。

安裝成功后,把代碼復(fù)制到需要上傳的頁面

使用 AetherUpload 視頻上傳過程

使用 AetherUpload 視頻上傳過程

提示:代碼路徑 vendorpeinhuaetherupload-laravelviewsexample.blade.php

上傳報錯 AetherUploadUploadController::validate does not exist, AetherUploadUploadController::validate 不存在

因為 UploadController.php 文件有 validate 驗證,驗證上傳文件 / 視頻一些必要參數(shù)

使用 AetherUpload 視頻上傳過程

使用 AetherUpload 視頻上傳過程

我給注釋掉了

文件路徑 vendorpeinhuaetherupload-laravelsrcUploadController.php

文件 / 視頻上傳路徑 storageapp 下,而我想要上傳到 storageapppublic

需要改動一個文件 (文件名稱 PartialResource.php)

第一個改動如下

使用 AetherUpload 視頻上傳過程

第二個改動如下

使用 AetherUpload 視頻上傳過程

文件路徑 vendorpeinhuaetherupload-laravelsrcPartialResource.php

為 storage 創(chuàng)建軟連接

命令 php artisan storage:link

訪問 public/storage 文件夾可以直接訪問到視頻 / 文件上傳路徑,即 storageapppublic 文件夾

更多Laravel相關(guān)技術(shù)文章,請訪問AetherUpload欄目進行學(xué)習(xí)!

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊6 分享