CDN与对象存储联动 – 图片分离架构实战(以又拍云+WordPress为例)
评测概述
大多数网站的性能瓶颈在于图片。将图片分离到对象存储(OSS),再通过cdn加速访问,可以显著减轻源站压力,提升加载速度。
本文以又拍云(对象存储Kodo + CDN)和WordPress为例,介绍图片分离架构的完整配置步骤。
一、架构原理
用户访问网站时,HTML由源站VPS处理;图片、CSS、JS等静态资源从对象存储读取,经过CDN缓存后返回。源站只处理动态请求,负载降低。
对象存储的价格比VPS硬盘便宜(又拍云10GB免费,超出后约0.29元/GB/月)。CDN可进一步降低流量成本。
二、准备工作
- 已备案域名(用于CDN加速)
- 又拍云账号(已实名认证)
- WordPress站点正常运行
三、步骤1:创建对象存储空间
登录又拍云控制台 → 对象存储 → 新建空间。命名如“image-bucket”,存储区域选离你近的地点,访问控制选“公开”。
空间创建后,会生成一个测试域名(格式 xxx.upyun.com)。正式使用建议绑定自有域名。
四、步骤2:绑定自定义域名并开启CDN
在又拍云CDN控制台添加域名(如 img.baike300.com),源站配置选择“又拍云对象存储”,并选择刚创建的空间。
添加后获得CNAME地址,去你的DNS服务商添加CNAME记录。开启HTTPS(可申请免费Let's Encrypt证书)。
五、步骤3:配置WordPress插件
推荐使用WPQINIU(支持又拍云、七牛云、阿里云OSS)。在WordPress后台搜索并安装WPQINIU插件。
填写配置:
- AccessKey / SecretKey:在又拍云控制台“密钥管理”中获取。
- 存储空间:填写image-bucket。
- 域名:填写img.baike300.com。
- 文件类型:jpg,png,gif,webp,mp4,svg,css,js。
勾选“开启CDN加速”和“文件重命名”(可选)。保存后,新上传的图片会自动推送到对象存储。
六、步骤4:迁移已有图片
WPQINIU插件支持“批量同步”功能,将本地已有图片全部上传到对象存储。注意执行前先备份数据库。
同步完成后,插件会自动将文章中的图片URL替换为新的CDN地址。
七、步骤5:验证效果
在浏览器中打开网站,查看图片URL是否为img.baike300.com地址。使用开发者工具查看加载时间是否下降。又拍云CDN控制台可查看缓存命中率和流量。
八、常见问题
Q:对象存储流量费用会不会很贵?
又拍云联盟用户每月有10GB免费CDN流量和10GB存储空间,个人博客一般够用。超出后约0.29元/GB,比VPS带宽便宜。
Q:网站搬家了,图片还能访问吗?
可以,图片已独立存储在对象存储,不受源站迁移影响。只需在新VPS重新配置插件即可。
Q:HTTPS图片无法显示?
检查CDN域名是否已配置SSL证书,以及插件设置的域名是否包含https://前缀。
此架构适合图片多的网站(博客、电商、相册)。推荐有经验的站长尝试。

