PHPackages                             gtcfla/aetherupload-hyperf - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. gtcfla/aetherupload-hyperf

ActiveLibrary[File &amp; Storage](/categories/file-storage)

gtcfla/aetherupload-hyperf
==========================

Hyperf Package for uploading big files

v1(4y ago)08GPL-2.0PHPPHP &gt;=7.4

Since Dec 16Pushed 4y ago1 watchersCompare

[ Source](https://github.com/gtcfla/aetherupload-hyperf)[ Packagist](https://packagist.org/packages/gtcfla/aetherupload-hyperf)[ RSS](/packages/gtcfla-aetherupload-hyperf/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

aetherupload-laravel
====================

[](#aetherupload-laravel)

提供超大文件上传的laravel扩展包，带百分比进度显示，支持断点续传，支持自定义中间件，基于laravel 5开发。

我们知道，在以前，文件上传采用的是直接传整个文件的方式，这种方式对付一些小文件是没有问题的。而当需要上传大文件时，此种方式不仅操作繁琐，需要修改web服务器和后端语言的配置，而且会大量占用服务器的内存，导致服务器内存吃紧，严重的甚至传输超时或文件过大无法上传。很显然，普通的文件上传方式已无法满足现在越来越高的要求。

随着技术的发展，如今我们可以利用HTML5的分块上传技术来轻松解决这个困扰，通过将大文件分割成小块逐个上传再拼合，来降低服务器内存的占用，突破服务器及后端语言配置中的上传大小限制，可上传任意大小的文件，同时也简化了操作，提供了直观的进度显示。 [![示例页面](https://camo.githubusercontent.com/77c07767c3af8b29e31e4d452fabe14418afea4f52b7f48f5f034402c7742892/687474703a2f2f7777322e73696e61696d672e636e2f6c617267652f3639653233303536677731663539723738616461696a32306e373066743075322e6a7067)](https://camo.githubusercontent.com/77c07767c3af8b29e31e4d452fabe14418afea4f52b7f48f5f034402c7742892/687474703a2f2f7777322e73696e61696d672e636e2f6c617267652f3639653233303536677731663539723738616461696a32306e373066743075322e6a7067)

用法
==

[](#用法)

1. 在终端内切换到你的laravel项目根目录，执行`composer require peinhu/aetherupload-laravel dev-master`
2. 在`config/app.php`的`providers`数组中添加一行`Peinhu\AetherUpload\AetherUploadServiceProvider::class,`
3. 执行`php artisan vendor:publish`来发布一些文件和目录
4. 赋予上传目录相应权限，在项目根目录下，执行`chmod 755 storage/app/uploads -R`
5. 在浏览器访问`http://域名/aetherupload`可到达示例页面

提示：更改相关配置选项请编辑`config/aetherupload.php`。

优化建议
====

[](#优化建议)

- （推荐）设置每天自动清除无效文件。
    由于上传流程存在意外终止的情况，如在传输过程中强行关闭页面或浏览器，将会导致已产生的临时文件成为无效文件，占据大量的存储空间，我们可以使用Laravel的任务调度功能来定期清除它们。
    在Linux中运行`crontab -e`命令，确保文件中包含这行代码：
    `* * * * * php /项目根目录的绝对路径/artisan schedule:run 1>> /dev/null 2>&1`
    在`app/Console/Kernel.php`中的`schedule`方法中添加以下代码：

```
  $schedule->call(function () {
      (new \Peinhu\AetherUpload\Uploader())->cleanUpDir();
  })->daily();
```

- 提高临时文件读写速度。
    利用Linux的tmpfs文件系统，来达到将临时文件放到内存中快速读写的目的。执行以下命令：
    `mkdir /dev/shm/tmp`
    `chmod 1777 /dev/shm/tmp`
    `mount --bind /dev/shm/tmp /tmp`

更新日志
====

[](#更新日志)

**2016-07-13 v1.0.0正式版**

添加完整说明，修正一些小问题。

**2016-06-24 v1.0.0测试版**

许可证
===

[](#许可证)

使用GPLv2许可证, 查看LICENCE文件以获得更多信息。

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1614d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/45ca5fc50aa7ecff80054fd7ba8756f790d0e639bc7a6bed409db42adb6c8fc4?d=identicon)[gtcfla](/maintainers/gtcfla)

---

Top Contributors

[![gtcfla](https://avatars.githubusercontent.com/u/12646335?v=4)](https://github.com/gtcfla "gtcfla (3 commits)")

### Embed Badge

![Health badge](/badges/gtcfla-aetherupload-hyperf/health.svg)

```
[![Health](https://phpackages.com/badges/gtcfla-aetherupload-hyperf/health.svg)](https://phpackages.com/packages/gtcfla-aetherupload-hyperf)
```

###  Alternatives

[knplabs/gaufrette

PHP library that provides a filesystem abstraction layer

2.5k39.8M123](/packages/knplabs-gaufrette)[google/cloud-storage

Cloud Storage Client for PHP

34390.8M125](/packages/google-cloud-storage)[illuminate/filesystem

The Illuminate Filesystem package.

15261.6M2.6k](/packages/illuminate-filesystem)[superbalist/flysystem-google-storage

Flysystem adapter for Google Cloud Storage

26320.6M30](/packages/superbalist-flysystem-google-storage)[creocoder/yii2-flysystem

The flysystem extension for the Yii framework

2931.7M62](/packages/creocoder-yii2-flysystem)[flowjs/flow-php-server

PHP library for handling chunk uploads. Works with flow.js html5 file uploads.

2451.6M15](/packages/flowjs-flow-php-server)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
