Skip to content

☁️ 云存储配置完全指南

本文档详细介绍4大主流云存储服务的配置方法:阿里云、腾讯云、七牛云、京东云


📋 目录


🌟 云存储概述

什么是云存储?

云存储(Cloud Storage)是一种在线存储服务,用于存储图片、视频、文件等静态资源。

核心优势:

  • 📦 大容量 - 按需扩展,理论上无限容量
  • 🚀 高速度 - CDN 加速,全国访问快速
  • 💰 低成本 - 按量计费,比自建存储更划算
  • 🔒 高可靠 - 数据多重备份,99.9999999% 可靠性
  • ⚙️ 易管理 - Web 控制台,简单易用

为什么需要云存储?

场景对比:

存储方式优点缺点适用场景
本地存储简单,无额外费用容量有限,访问慢,不安全开发测试
云存储大容量,高速度,高可靠需要付费配置生产环境

说白了: 小项目可以本地存,大项目必须用云存储!


📊 云存储选型对比

四大云服务商对比

维度阿里云 OSS腾讯云 COS七牛云京东云
市场份额⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
价格中等中等较低较低
稳定性极高极高
速度很快很快
文档质量优秀优秀良好一般
适合场景企业级企业级中小项目中小项目

价格对比(参考价格)

存储费用:

服务商标准存储低频存储归档存储
阿里云¥0.12/GB/月¥0.08/GB/月¥0.033/GB/月
腾讯云¥0.118/GB/月¥0.08/GB/月¥0.033/GB/月
七牛云¥0.148/GB/月¥0.10/GB/月-
京东云¥0.12/GB/月¥0.08/GB/月¥0.033/GB/月

流量费用(外网下行):

服务商CDN直接访问
阿里云¥0.15-0.25/GB¥0.50/GB
腾讯云¥0.18-0.28/GB¥0.50/GB
七牛云¥0.29/GB¥0.50/GB
京东云¥0.25/GB¥0.50/GB

选型建议

快速决策矩阵:

你的情况推荐选择理由
大型企业,预算充足阿里云/腾讯云稳定性最高,服务最完善
中小项目,注重性价比七牛云/京东云价格实惠,功能够用
已使用其他阿里云服务阿里云统一管理,有优惠
已使用其他腾讯云服务腾讯云统一管理,有优惠
初次使用,不确定七牛云文档友好,易上手

🔵 阿里云 OSS 配置

步骤 1:开通对象存储服务

  1. 登录阿里云控制台:https://www.aliyun.com/
  2. 搜索并进入 "对象存储 OSS"
  3. 点击 "立即开通"

步骤 2:创建 Bucket

操作路径: 控制台 → 对象存储 OSS → Bucket 列表 → 创建 Bucket

配置参数:

配置项推荐值说明
Bucket 名称shop-files全局唯一,小写字母数字短横线
地域选择就近地域华东1(杭州)、华北2(北京)
存储类型标准存储频繁访问的文件
读写权限公共读允许公开访问
服务端加密不加密图片无需加密
实时日志关闭可选,产生额外费用

步骤 3:获取 AccessKey

操作路径: 右上角头像 → AccessKey 管理 → 创建 AccessKey

记录信息:

  • AccessKey ID(公钥)
  • AccessKey Secret(私钥,仅显示一次)

步骤 4:配置跨域访问(CORS)

操作路径: Bucket 详情 → 权限管理 → 跨域设置 → 创建规则

CORS 配置:

来源(Origin):*
允许 Methods:GET, POST, PUT, DELETE, HEAD
允许 Headers:*
暴露 Headers:ETag, x-oss-request-id
缓存时间:600

步骤 5:在系统 中配置

配置信息:

参数示例值获取位置
AccessKey IDLTAI5tXXXXXXXXXXAccessKey 管理
AccessKey SecretqXXXXXXXXXXXXXXAccessKey 管理
Bucket 名称shop-filesBucket 列表
Endpointoss-cn-hangzhou.aliyuncs.comBucket 概览
自定义域名https://cdn.example.com可选

Endpoint 格式:

oss-<地域>.aliyuncs.com
示例:oss-cn-beijing.aliyuncs.com

🟢 腾讯云 COS 配置

步骤 1:开通对象存储服务

  1. 登录腾讯云控制台:https://cloud.tencent.com/
  2. 搜索并进入 "对象存储 COS"
  3. 点击 "立即使用"

步骤 2:创建存储桶

操作路径: 对象存储 → 存储桶列表 → 创建存储桶

配置参数:

配置项推荐值说明
名称shop-files字母数字短横线
所属地域选择就近地域北京、上海、广州
访问权限公有读私有写允许公开读取
存储类型标准存储频繁访问
服务端加密不启用可选

步骤 3:获取密钥

操作路径: 右上角头像 → 访问管理 → 访问密钥 → API 密钥管理

记录信息:

  • SecretId(公钥)
  • SecretKey(私钥)

步骤 4:配置跨域访问

操作路径: 存储桶详情 → 安全管理 → 跨域访问 CORS → 添加规则

CORS 配置:

来源 Origin:*
操作 Methods:GET, POST, PUT, DELETE, HEAD
Allow-Headers:*
Expose-Headers:ETag
超时 Max-Age:600

步骤 5:在系统 中配置

配置信息:

参数示例值获取位置
SecretIdAKIDxxxxxxxxxxxxxxxxAPI 密钥管理
SecretKeyxxxxxxxxxxxxxxxxAPI 密钥管理
Bucketshop-files-1234567890存储桶列表(含 APPID)
Regionap-beijing存储桶地域
自定义域名https://cdn.example.com可选

Region 代码:

ap-beijing    # 北京
ap-shanghai   # 上海
ap-guangzhou  # 广州
ap-chengdu    # 成都

🟡 七牛云存储配置

步骤 1:注册七牛云账号

访问:https://www.qiniu.com/

步骤 2:获取 AccessKey/SecretKey

操作路径: 右上角头像 → 密钥管理

记录信息:

  • AK(AccessKey)
  • SK(SecretKey)

步骤 3:创建存储空间

操作路径: 对象存储 → 空间管理 → 新建空间

配置参数:

配置项推荐值说明
存储空间名称shop-files字母数字短横线
存储区域选择就近区域华东、华北、华南
访问控制公开空间允许公开访问

步骤 4:绑定访问域名

操作路径: 空间设置 → 域名管理 → 绑定域名

域名类型:

  • 测试域名:免费,30天有效期(仅测试用)
  • 自定义域名:需要备案,永久有效

绑定自定义域名步骤:

  1. 在域名管理后台添加 CNAME 记录
  2. 在七牛云绑定域名
  3. 等待审核通过

步骤 5:在系统 中配置

配置信息:

参数示例值获取位置
AccessKeyxxxxxxxxxxxxxxxxxxxxx密钥管理
SecretKeyxxxxxxxxxxxxxxxxxxxxx密钥管理
Bucketshop-files空间管理
访问域名http://xxxxx.bkt.clouddn.com域名管理
存储区域z0空间概览

存储区域代码:

z0   # 华东
z1   # 华北
z2   # 华南
na0  # 北美
as0  # 东南亚

🟣 京东云存储配置

步骤 1:注册京东云账号

合作伙伴链接:

https://partner.jdcloud.com/partner/notice/b06c3232b6394fdfa496923b8e00b286

提示: 通过合作伙伴链接注册可享受优惠!

步骤 2:绑定合作伙伴

  1. 如有京东云账号,点击 "登录后再关联"
  2. 如无账号,点击 "注册后再关联"
  3. 完成后点击 "接受邀请""确认授权"

⚠️ 重要: 绑定成功后,确认授权完成即可享受优惠!

步骤 3:创建 Bucket

操作路径: 对象存储 OSS → Bucket 管理 → 创建 Bucket

配置参数:

配置项推荐值说明
Bucket 名称shop-files字母数字短横线
地域选择就近地域华北-北京、华东-上海
访问权限公共读允许公开访问
存储类型标准存储频繁访问

步骤 4:获取 AccessKey

操作路径: 右上角 → AccessKey 管理 → 创建 AccessKey

记录信息:

  • Access Key ID
  • Access Key Secret(仅显示一次)

步骤 5:配置 CORS

操作路径: Bucket 设置 → 权限管理 → 跨域设置 → 新建规则

CORS 配置:

来源 Origin:*
允许 Methods:GET, POST, PUT, DELETE, HEAD
允许 Headers:*
暴露 Headers:ETag
缓存时间:3600

步骤 6:在系统 中配置

配置信息:

参数示例值获取位置
Access Key IDAKXXXXXXXXXXXXAccessKey 管理
Access Key SecretSKXXXXXXXXXXXXAccessKey 管理
Bucketshop-filesBucket 列表
Endpoints3.cn-north-1.jdcloud-oss.comBucket 详情
自定义域名https://cdn.example.com可选

Region 代码:

cn-north-1  # 华北-北京
cn-east-2   # 华东-上海
cn-south-1  # 华南-广州

⚙️ 配置文件说明

application.yml 配置示例

yaml
# 云存储配置
oss:
  # 云存储类型:aliyun, tencent, qiniu, jdcloud
  type: aliyun
  
  # 阿里云配置
  aliyun:
    access-key-id: LTAI5tXXXXXXXXXX
    access-key-secret: qXXXXXXXXXXXXXX
    endpoint: oss-cn-hangzhou.aliyuncs.com
    bucket-name: shop-files
    domain: https://cdn.example.com  # 可选
  
  # 腾讯云配置
  tencent:
    secret-id: AKIDxxxxxxxxxxxxxxxx
    secret-key: xxxxxxxxxxxxxxxx
    region: ap-beijing
    bucket-name: shop-files-1234567890
    domain: https://cdn.example.com  # 可选
  
  # 七牛云配置
  qiniu:
    access-key: xxxxxxxxxxxxxxxxxxxxx
    secret-key: xxxxxxxxxxxxxxxxxxxxx
    bucket-name: shop-files
    domain: http://xxxxx.bkt.clouddn.com
    region: z0
  
  # 京东云配置
  jdcloud:
    access-key-id: AKXXXXXXXXXXXX
    access-key-secret: SKXXXXXXXXXXXX
    endpoint: s3.cn-north-1.jdcloud-oss.com
    bucket-name: shop-files
    domain: https://cdn.example.com  # 可选

切换云存储服务

只需修改 oss.type 参数即可:

yaml
oss:
  type: aliyun    # 使用阿里云
  # type: tencent  # 使用腾讯云
  # type: qiniu    # 使用七牛云
  # type: jdcloud  # 使用京东云

✅ 测试验证

统一测试步骤

  1. 上传测试图片

    • 进入 管理后台
    • 上传一张测试图片
    • 检查上传是否成功
  2. 验证访问

    • 复制图片链接
    • 在浏览器中打开
    • 确认图片能正常显示
  3. 检查云存储控制台

    • 登录对应云服务商控制台
    • 查看 Bucket 文件列表
    • 确认文件已上传

成功标志:

  • ✅ 文件出现在云存储 Bucket 中
  • ✅ 通过 URL 能访问文件
  • ✅ 商城系统显示图片正常

❓ 常见问题

Q1:上传文件后无法访问?

可能原因:

  1. Bucket 权限设置为私有
  2. CORS 配置不正确
  3. 域名未绑定或 CNAME 未生效

解决方案:

1. 检查 Bucket 访问权限,改为"公共读"
2. 添加 CORS 规则,允许跨域访问
3. 检查域名绑定状态和 DNS 解析

Q2:如何选择存储地域?

选择原则:

  • 优先选择离服务器近的地域
  • 如有 CDN,地域影响较小
  • 建议与服务器同城

常见搭配:

服务器在北京 → 选择华北地域
服务器在上海 → 选择华东地域
服务器在广州 → 选择华南地域

Q3:AccessKey Secret 忘记了怎么办?

解决方案:

密钥无法找回,只能重新创建:
1. 进入密钥管理
2. 删除旧密钥(或禁用)
3. 创建新密钥
4. 更新系统配置

Q4:如何降低存储成本?

优化建议:

方法节省比例实施难度
图片压缩上传30-50%简单
使用低频存储(备份文件)40%简单
定期清理无用文件10-30%中等
使用对象生命周期20-40%中等
购买资源包15-30%简单

Q5:可以同时使用多个云存储吗?

可以!两种方式:

  1. 主备模式

    主:阿里云(日常使用)
    备:腾讯云(灾备)
  2. 业务分离

    商品图片 → 阿里云
    用户头像 → 七牛云
    视频文件 → 腾讯云

Q6:如何迁移到其他云存储?

迁移步骤:

1. 配置新的云存储服务
2. 使用工具批量迁移文件(ossutil、cos-migration)
3. 在 管理后台切换配置
4. 测试验证
5. 保留旧存储一段时间后删除

推荐工具:

  • 阿里云 ossutil
  • 腾讯云 COSCMD
  • 七牛云 qshell

🎯 最佳实践

1. 安全建议

安全清单:

  • [ ] AccessKey 不提交到代码仓库
  • [ ] 定期更换 AccessKey(3-6个月)
  • [ ] 开启访问日志
  • [ ] 配置防盗链
  • [ ] 设置 IP 黑白名单(重要资源)
  • [ ] 使用子账号和 RAM 权限控制

2. 性能优化

优化措施:

措施效果成本
开启 CDN 加速显著提升中等
图片 WebP 格式减少流量 30-50%
设置缓存策略减少请求
图片懒加载加快首屏
分片上传大文件提高成功率

3. 目录组织

推荐结构:

/images/
  /products/      # 商品图片
  /avatars/       # 用户头像
  /banners/       # Banner图
/files/
  /docs/          # 文档
  /excel/         # Excel文件
/videos/          # 视频文件
/temp/            # 临时文件(7天自动删除)

4. 命名规范

推荐命名:

{项目}-{环境}-{类型}
示例:
prod-images     # 生产环境图片
test-images     # 测试环境图片
prod-files      # 生产环境文件

📊 总结

配置流程总览

选择云服务商 → 注册账号 → 创建 Bucket →
获取 AccessKey → 配置 CORS → 系统配置 → 测试验证

快速选择指南

需求推荐理由
企业级应用阿里云/腾讯云稳定可靠,服务完善
中小项目七牛云/京东云性价比高,易上手
初次使用七牛云文档友好,免费额度多
已有阿里云ECS阿里云内网传输免费
已有腾讯云服务器腾讯云内网传输免费

关键要点

  • 权限设置:Bucket 必须设为公共读
  • CORS 配置:必须配置跨域访问
  • 密钥安全:妥善保管 AccessKey Secret
  • 测试验证:配置后务必测试
  • 备份方案:建议配置多个云存储备用

🔗 相关资源

官方文档:

工具推荐: