阿里云ECS本身并不限制上传文件大小为100M,这个限制通常来自于你使用的上传方式或工具,而不是ECS服务器本身的限制。因此,如果你遇到“上传文件不能超过100M”的问题,可能是以下几种原因导致的,下面提供相应的解决方案:
✅ 常见原因及解决方案
1. 使用Web控制台或网页上传工具(如宝塔、phpMyAdmin、WordPress等)
很多Web管理工具默认有上传大小限制(例如 PHP 的 upload_max_filesize 和 post_max_size)。
解决方法:
修改 PHP 配置文件 php.ini:
upload_max_filesize = 200M
post_max_size = 200M
max_execution_time = 300
max_input_time = 300
memory_limit = 256M
修改后重启 Web 服务(如 Apache 或 Nginx + PHP-FPM):
sudo systemctl restart php-fpm
sudo systemctl restart nginx
💡 提示:如果你用的是宝塔面板,可以在「软件商店」→「PHP设置」→「上传限制」中直接修改。
2. 使用FTP上传工具(如FileZilla)
FTP 本身没有100M限制,但某些FTP服务器(如 vsftpd)可能配置了限制。
解决方法:
检查 vsftpd 配置(通常无文件大小限制),一般不需要修改。确保你使用的是主动模式或被动模式正确配置,网络稳定即可上传大文件。
3. 使用阿里云控制台的“文件导入”功能
阿里云ECS控制台的“文件导入”或“云助手”等工具可能有100M限制。
解决方法:
👉 不要通过网页控制台上传大文件!
改用以下方式:
- SCP 命令(推荐)
- SFTP 工具(如 WinSCP、FileZilla)
- rsync 同步
- 挂载OSS(适合超大文件)
✅ 推荐的大文件上传方法
✅ 方法1:使用 scp 命令(Linux/Mac/Windows 10+)
scp /path/to/your/largefile.zip root@your-ecs-ip:/root/
例如:
scp bigfile.zip root@121.40.123.45:/root/
支持断点续传?不支持。建议用
rsync。
✅ 方法2:使用 rsync(支持断点续传)
rsync -avz --progress /path/to/file.zip root@your-ecs-ip:/root/
如果网络中断,可以重新运行命令继续传输。
✅ 方法3:使用 SFTP 图形工具(如 WinSCP)
- 下载并安装 WinSCP
- 使用你的ECS公网IP、用户名(如 root)、密码或密钥登录
- 拖拽上传文件,支持大文件和断点续传(需服务器支持)
✅ 方法4:通过OSS中转(适合超大文件,如10G+)
- 将文件上传到阿里云 OSS(支持分片上传)
- 登录ECS,用
ossutil下载文件:ossutil cp oss://your-bucket-name/largefile.zip ./下载速度快,适合大文件。
官网:https://help.aliyun.com/product/31815.html
✅ 检查服务器磁盘空间
确保ECS有足够的磁盘空间接收文件:
df -h
总结
| 问题原因 | 解决方案 |
|---|---|
| PHP上传限制 | 修改 php.ini 中 upload_max_filesize 等参数 |
| 控制台上传限制 | 改用 scp、rsync、SFTP 或 OSS |
| FTP配置问题 | 检查 vsftpd 配置,建议换用 SFTP |
| 网络中断 | 使用 rsync 或支持断点续传的工具 |
🔐 安全提醒
- 使用密钥登录比密码更安全
- 上传完成后及时清理临时文件
- 避免在公网暴露FTP或Web上传接口
如果你能提供你当前使用的上传方式(比如是宝塔、FTP、scp、还是网页上传),我可以给出更具体的命令或配置指导。
CLOUD云