腾讯云 COS 静态网站部署教程
使用对象存储(COS)部署你的静态网站,绑定自定义域名,开启 HTTPS,一站式上线
01
账号与准备
首先需要一个已实名认证的腾讯云账号,并准备好待部署的静态网站文件。
账号要求: 中国大陆用户需完成实名认证,否则无法使用 COS 服务。
准备你的静态网站文件:
my-website/
├── index.html # 网站首页(必需)
├── 404.html # 自定义 404 页面(推荐)
├── css/
│ └── style.css
├── js/
│ └── app.js
├── images/
│ └── logo.png
└── favicon.ico
注意: 静态网站托管仅支持 HTML、CSS、JS、图片、字体等静态资源,不支持 PHP、Node.js 等后端语言。
官方文档:COS 产品概述
02
开通 COS 服务
登录腾讯云控制台,进入对象存储(COS)服务页面并开通。
操作步骤:
1. 访问 https://console.cloud.tencent.com/cos5
2. 点击「立即使用」或「开通服务」
3. 阅读并同意服务协议,完成开通
4. 服务开通后,进入 COS 存储桶列表页面
费用说明: COS 提供免费额度(50GB 存储 + 10GB 下行流量/月),个人小站通常足够使用。
官方文档:快速入门
03
创建存储桶
在 COS 控制台创建一个存储桶(Bucket),作为静态网站文件的存储空间。
关键配置:
| 配置项 | 推荐值 | 说明 |
|---|---|---|
| 所属地域 | 南京/上海 | 选择离目标用户最近的地域 |
| 名称 | my-site-1234567890 | 全局唯一,需包含 APPID 后缀 |
| 访问权限 | 公有读私有写 | 网站需要公开访问 |
| 版本控制 | 关闭 | 静态网站通常不需要 |
| 多 AZ | 关闭 | 除非需要更高可用性 |
安全提醒: 设置为「公有读私有写」后,桶内所有文件将可被公网访问。切勿上传敏感文件(如 .env、密钥文件)。
官方文档:创建存储桶
04
配置静态网站托管
在存储桶设置中开启静态网站托管功能,指定索引文档和错误文档。
操作路径:
存储桶列表 → 点击桶名 → 基础配置 → 静态网站
1. 打开「静态网站」开关
2. 索引文档(首页):index.html
3. 错误文档(404页面):404.html(可选)
4. 点击「保存」
配置完成后,系统会生成一个访问节点(域名),格式为:
https://<BucketName>.cos.<Region>.myqcloud.com
路由说明: 使用 Vue/React 构建的 SPA 应用,建议将错误文档也设置为
官方文档:托管静态网站
index.html,以支持前端路由。
05
上传网站文件
将本地网站文件上传到存储桶。推荐使用 COSCMD 命令行工具进行批量上传。
方式一:控制台上传(适合少量文件)
1. 进入存储桶 → 文件列表
2. 点击「上传文件」→ 选择文件或拖拽上传
3. 保持目录结构,逐个文件夹上传
方式二:COSCMD 上传(推荐,适合批量)
# 安装 COSCMD
pip install coscmd
# 配置访问密钥
coscmd config -a <SecretId> -s <SecretKey> \
-b <BucketName> -r <Region>
# 上传整个网站目录(保持目录结构)
coscmd upload -r ./my-website/ /
# 验证上传结果
coscmd list
获取密钥: 访问 CAM 控制台 → 访问密钥 → API 密钥管理,获取 SecretId 和 SecretKey。
官方文档:COSCMD 工具
06
绑定自定义域名
将你的自定义域名绑定到 COS 存储桶,并(推荐)通过 CDN 加速访问。
方式一:自定义源站域名(仅替换域名)
存储桶 → 域名与传输管理 → 自定义源站域名
1. 点击「添加域名」
2. 输入自己的域名(如 www.example.com)
3. 在 DNS 服务商处添加 CNAME 记录:
www → <BucketName>.cos.<Region>.myqcloud.com
方式二:CDN 加速域名(推荐)
存储桶 → 域名与传输管理 → 自定义 CDN 加速域名
1. 点击「添加域名」→ 选择 CDN 加速
2. 输入域名,配置缓存规则
3. 在 DNS 服务商处添加 CNAME 记录(指向 CDN 提供的 CNAME)
4. 在 CDN 控制台配置 HTTPS 证书
域名备案: 使用中国大陆 CDN 节点,域名必须完成 ICP 备案。
官方文档:自定义域名
07
上线与测试
完成以上配置后,通过域名访问验证部署结果,并进行性能和安全检查。
验证清单:
☐ 通过自定义域名访问网站,首页正常加载
☐ 各页面路由跳转正常(SPA 需验证 404 重定向)
☐ 静态资源(CSS/JS/图片)加载无误
☐ HTTPS 证书生效,浏览器显示安全锁
☐ 404 页面(自定义或默认)正常显示
☐ 清除缓存后再次访问确认
常见问题排查:
| 现象 | 原因 | 解决方案 |
|---|---|---|
| 访问返回 AccessDenied | 存储桶权限非公有读 | 改为公有读私有写 |
| 刷新页面 404(SPA) | 路由未重写到 index.html | 错误文档设为 index.html |
| HTTPS 证书不生效 | CDN 证书未配置 | CDN 控制台配置 SSL 证书 |
| 资源加载 403 | 防盗链或跨域问题 | 检查防盗链设置和 CORS 配置 |
| DNS 解析不到 | CNAME 未生效 | 等待 DNS 生效(最长 72 小时) |
部署完成! 你的静态网站已成功上线。建议定期使用 Lighthouse 或 PageSpeed Insights 检查性能,并在每次更新网站文件后刷新 CDN 缓存。
官方文档:静态网站问题排查