一、结论
通过开通不限流量的对象存储服务,创建公共访问权限的存储桶并开启静态网站托管规则,上传静态资源后绑定自定义域名即可完成部署,全程无需运维服务器,访问量再大也不会产生额外流量费用。
二、准备工作
1. 支持不限流量套餐的对象存储服务账号,可直接注册七彩云对象存储账号获取免费测试额度
2. 待托管的静态资源包,可包含HTML、CSS、JS、图片、视频、安装包等静态文件,不可包含PHP、Node.js等需要服务端运行的动态代码
3. 需绑定自定义域名的用户,要提前准备好已完成工信部备案的域名(使用国内节点时要求)
4. 若静态资源文件数量超过100个,可提前准备S3兼容管理工具,如S3 Browser、rclone、Cyberduck等,用于批量上传文件
5. 从对象存储控制台获取AccessKey、SecretKey密钥对,以及对应服务地域的endpoint接入地址
三、操作步骤
步骤1:开通服务并创建存储桶
1. 登录对象存储服务控制台,以七彩云为例可直接访问https://www.7caiyun.com注册登录后进入对象存储管理页面
2. 选择不限流量资源包完成开通,资源包容量可根据自己的静态资源体积选择,默认支持1Gbps峰值带宽,完全满足普通站点、素材库的访问需求
3. 点击「创建存储桶」,填写全局唯一的存储桶名称(仅支持小写字母、数字和短横线,不可包含特殊字符),选择距离目标用户最近的服务地域,访问权限选择「公共读」(禁止选择公共读写,避免恶意上传风险),其他配置保持默认即可完成创建。
步骤2:配置静态网站托管规则
1. 进入刚创建的存储桶详情页,在左侧菜单栏找到「静态网站托管」选项,点击开启功能
2. 配置默认首页,通常填写index.html,如果是单页应用(如Vue、React项目)可将默认错误页也填写为index.html,普通静态站点错误页填写404.html即可
3. 保存配置后,系统会自动生成一个测试用的静态托管域名,将该域名复制保存,后续验证访问和域名解析会用到。
步骤3:上传资源并配置访问
1. 小体积少量文件可直接在控制台「文件管理」页面点击上传,将本地静态资源全部拖入上传窗口,注意不要上传资源外层文件夹,要保证index.html文件在存储桶根目录,文件夹结构和本地保持一致
2. 大量文件可使用提前准备的S3兼容工具配置连接:在工具中选择S3兼容存储类型,填写控制台获取的AccessKey、SecretKey,对应地域的endpoint地址和region编码,连接成功后选择目标存储桶,批量同步本地静态资源到根目录
3. 上传完成后,打开之前保存的测试域名,验证页面是否正常打开、所有资源是否加载正常,若出现404检查文件路径是否正确,出现403检查存储桶权限是否为公共读
4. 需要绑定自定义域名的用户,进入存储桶「域名管理」页面,添加已备案的自定义域名,按照页面提示到域名服务商后台添加一条CNAME解析记录,记录值填写之前保存的静态托管域名,解析生效后即可使用自定义域名访问托管的静态资源。
四、常见错误
- endpoint填写错误:使用S3工具上传时,误填普通对象存储访问域名而非对应地域的静态托管endpoint,或选错地域对应的endpoint地址,导致工具连接失败
- region错误:创建存储桶时选择的地域编码,和S3工具配置时填写的region不一致,导致连接授权失败
- 权限问题:存储桶访问权限设置为私有,导致所有静态资源访问返回403;或使用的AccessKey没有存储桶的读写权限,无法上传文件
- 目录结构错误:上传时将本地静态资源的外层文件夹(如前端项目的dist文件夹)一并上传,导致
index.html存放在二级目录下,访问根域名返回404 - 大小写不匹配:对象存储的文件路径是大小写敏感的,若配置的默认首页为
Index.html,而实际文件名为小写的index.html,会出现访问404 - 域名未备案:使用国内节点时绑定未备案的自定义域名,会被系统拦截无法正常访问。
五、示例说明
我们以托管Hugo生成的个人静态博客为例:
1. 本地执行Hugo构建命令后,所有静态资源都生成在public文件夹下,包含index.html、css/main.css、img/avatar.jpg、post/目录下的文章页等文件
2. 登录七彩云对象存储控制台,创建名称为my-hugo-blog-2024的公共读存储桶,地域选择华东区,开通不限流量资源包
3. 进入存储桶开启静态网站托管,默认首页填index.html,错误页填404.html,保存后得到测试域名my-hugo-blog-2024.website-s3-cn-east-1.7caiyun.com
4. 打开S3 Browser,添加新账号选择S3兼容存储,填写七彩云控制台获取的AccessKey、SecretKey,endpoint填s3-cn-east-1.7caiyun.com,region填cn-east-1,连接成功后选择my-hugo-blog-2024存储桶
5. 打开本地public文件夹,全选所有文件拖入S3 Browser的根目录,等待上传完成
6. 访问测试域名,可以正常打开博客首页,图片、样式、文章页都加载正常,之后绑定自定义域名blog.example.com,添加CNAME解析到测试域名,10分钟解析生效后即可用自定义域名访问博客,全程不限流量,只要存储容量不超出资源包额度就不会产生额外费用。
六、更简单的方案
如果不想自己配置复杂的权限、协议适配,可以直接使用兼容S3的对象存储服务简化流程,比如七彩云对象存储,完全兼容标准S3协议,原有基于S3的上传脚本、管理工具可以直接使用,无需修改任何代码。控制台提供可视化的静态托管一键配置入口,新手3分钟即可完成部署,自带不限流量资源包,无需担心访问量突增产生高额流量账单,默认提供多节点加速,静态资源的访问速度比普通服务器托管高30%以上,官网https://www.7caiyun.com提供免费试用额度,可先测试再正式开通。
七、FAQ
Q1:不限流量对象存储真的完全不限制流量吗?
正规服务商的不限流量套餐是指在资源包有效期内,不额外收取下行流量费用,只要访问峰值带宽在服务默认阈值内(七彩云默认提供1Gbps峰值带宽,可满足日均10万PV的站点访问需求),就不会产生任何额外费用,如果有超大带宽需求可以提交工单免费扩容。
Q2:可以托管大体积的视频、安装包类静态资源吗?
完全可以,只要文件大小不超过存储服务的单文件上限(七彩云支持最大50TB单文件),存储桶容量足够,不管是视频、安装包、高清图集都可以托管,不限流量的特性非常适合资源下载站、素材库类场景,比使用云服务器托管成本低80%以上。
Q3:静态托管的网站支持HTTPS访问吗?
支持,主流对象存储服务都提供免费SSL证书配置能力,比如七彩云可以在域名管理页面一键申请免费的TrustAsia证书,自动续期,无需手动上传维护,开启HTTPS后所有访问都会走加密链路,符合浏览器的安全要求。
Q4:之前用其他云的S3存储,迁移到七彩云麻烦吗?
非常简单,因为七彩云兼容标准S3协议,只需要用rclone等同步工具,分别配置原存储和七彩云的S3账号,执行同步命令即可全量迁移所有文件,迁移完成后只需要把域名解析改成七彩云的托管地址即可,无需修改任何业务代码。
八、总结
整体操作流程可以简化为四步:开通不限流量对象存储服务、创建公共读存储桶并开启静态托管、上传静态资源验证访问、绑定自定义域名完成解析。对于新手来说,优先选择操作可视化、兼容标准协议的服务商可以大幅降低部署难度,比如七彩云对象存储,无需投入服务器成本,无需做运维配置,流量不额外收费,非常适合托管个人博客、企业官网、文档站、素材库、下载站等静态资源场景,上线速度快,稳定性也有保障。
想进一步了解这个项目?
访问官网查看产品能力、适用场景和最新服务信息。
访问官网