阿里云ecs服务器上传文件不能超过100M 怎么办?

阿里云ECS本身并不限制上传文件大小为100M,这个限制通常来自于你使用的上传方式或工具,而不是ECS服务器本身的限制。因此,如果你遇到“上传文件不能超过100M”的问题,可能是以下几种原因导致的,下面提供相应的解决方案:


✅ 常见原因及解决方案

1. 使用Web控制台或网页上传工具(如宝塔、phpMyAdmin、WordPress等)

很多Web管理工具默认有上传大小限制(例如 PHP 的 upload_max_filesizepost_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+)

  1. 将文件上传到阿里云 OSS(支持分片上传)
  2. 登录ECS,用 ossutil 下载文件:
    ossutil cp oss://your-bucket-name/largefile.zip ./

    下载速度快,适合大文件。

官网:https://help.aliyun.com/product/31815.html


✅ 检查服务器磁盘空间

确保ECS有足够的磁盘空间接收文件:

df -h

总结

问题原因 解决方案
PHP上传限制 修改 php.iniupload_max_filesize 等参数
控制台上传限制 改用 scprsyncSFTPOSS
FTP配置问题 检查 vsftpd 配置,建议换用 SFTP
网络中断 使用 rsync 或支持断点续传的工具

🔐 安全提醒

  • 使用密钥登录比密码更安全
  • 上传完成后及时清理临时文件
  • 避免在公网暴露FTP或Web上传接口

如果你能提供你当前使用的上传方式(比如是宝塔、FTP、scp、还是网页上传),我可以给出更具体的命令或配置指导。