# 腾讯云 CDN 配置 HTTPS 证书：托管证书、强制跳转与回源

> 在腾讯云 CDN 上配置 HTTPS：选择腾讯云托管证书或上传自有证书，设置回源方式、强制跳转、HSTS 和 TLS 版本，并保持证书按时更新。

Source: https://ssl.sh/zh/guides/tencent-cloud-cdn-https/
Last updated: 2026-11-10

腾讯云 CDN 的 HTTPS 在“域名管理 → 管理 → HTTPS 配置”里开启：选择托管证书或上传自有证书，设好回源方式，再打开强制跳转、HSTS 并限制 TLS 版本。CDN 不会自己续期证书，托管证书要同步更新，自有证书要在到期前重新上传。

示例加速域名是 `cdn.example.com`。适用于截至 2026 年 11 月的腾讯云 CDN 控制台，菜单和选项名称以控制台实际显示为准。

## 前提条件

CDN 加速域名已接入并能通过 HTTP 正常访问。

- 已在腾讯云 CDN 添加加速域名，CNAME 已指向 CDN，HTTP 访问正常。
- 加速区域包含中国境内的，域名已完成 ICP 备案。
- 一张覆盖该域名的证书：腾讯云 SSL 证书服务里的证书（见 [腾讯云 SSL 证书申请](https://ssl.sh/zh/guides/tencent-cloud-ssl-certificate/)），或自有的 PEM 证书和私钥（例如 [acme.sh 签发](https://ssl.sh/zh/guides/acme-sh-dnspod-aliyun-dns/)）。
- 页面里没有写死的 `http://` 资源。

## 第一步：进入 HTTPS 配置

HTTPS 证书在每个加速域名的 HTTPS 配置页签里设置。登录 CDN 控制台 → 域名管理，找到加速域名点 **管理 → HTTPS 配置** 页签，在 HTTPS 配置一栏点击配置证书。

## 第二步：选择证书

证书有两种来源，优先用托管证书，续期后可以同步到 CDN：

- **腾讯云托管证书**：从 SSL 证书服务里选择已签发或已上传的证书。
- **自有证书**：证书内容粘贴完整证书链（站点证书在前，中间证书在后），私钥粘贴 PEM 格式私钥。

## 第三步：选择回源方式

回源方式决定 CDN 到源站这一段是否加密，推荐 HTTPS 回源或协议跟随。在同一步里选择：

- **HTTP 回源**：源站不需要证书，但 CDN 到源站是明文，源站也不能再做 HTTP 跳 HTTPS。
- **HTTPS 回源 / 协议跟随**：推荐。源站 443 端口要有覆盖回源 Host 的有效证书。

提交后等待配置下发，通常几分钟内生效。

## 第四步：强制跳转、HSTS 和 TLS 版本

强制跳转、HSTS、TLS 版本和 HTTP/2 是 HTTPS 配置页上的独立开关，建议这样设置：

- **强制跳转 HTTPS**：打开，跳转方式选 301。
- **HSTS**：确认全站 HTTPS 正常后再开启，max-age 先设短一些，见 [开启 HSTS](https://ssl.sh/zh/guides/enable-hsts/)。
- **TLS 版本**：只保留 TLS 1.2 和 TLS 1.3，除非必须兼容老客户端。
- **HTTP/2**：建议开启。

## 验证

配置正确时，颁发者和到期时间与配置的证书一致，HTTP 返回 301，开启 HSTS 后响应里有 `Strict-Transport-Security` 头。用 [SSL 证书检查](https://ssl.sh/zh/tools/ssl-checker/) 检查 CDN 域名，或在终端运行：

```bash
curl ssl.sh/cdn.example.com
curl -sI http://cdn.example.com | grep -iE '^(HTTP|location)'
curl -sI https://cdn.example.com | grep -i strict-transport-security
```

HSTS 响应头也可以用 [HSTS 检查](https://ssl.sh/zh/tools/hsts-checker/) 确认。

## 自动续期

CDN 本身不会续期证书，需要按证书来源处理：

- **托管证书**：在腾讯云 SSL 证书服务里续期或更新后，使用其关联云资源/自动部署能力同步到 CDN（功能名称和是否收费以控制台为准）。
- **自有证书**：每次续期都要重新上传。用 acme.sh 等客户端时，可在续期钩子里调用腾讯云 API 或命令行工具 tccli 上传证书并更新 CDN 域名配置，接口名称以腾讯云 API 文档为准。

证书最长 200 天（2027 年 3 月 15 日起 100 天，2029 年 3 月 15 日起 47 天），人工更换的频率会越来越高，要做自动化，并把域名加到 [ssl.sh 监控](https://ssl.sh/zh/monitor/)（开发中），到期前能收到提醒。

## 常见问题排查

- **证书与私钥不匹配**：上传的私钥不属于这张证书，用 [私钥匹配检查](https://ssl.sh/zh/tools/key-matcher/) 确认，原理见 [nginx key values mismatch](https://ssl.sh/zh/errors/nginx-key-values-mismatch/)。
- **部分手机或小程序报证书不受信任**：只上传了站点证书，补上中间证书，见 [缺少中间证书](https://ssl.sh/zh/errors/missing-intermediate-certificate/)。
- **无限跳转**：源站和 CDN 都在跳转，见常见问题和 [HTTP 跳转 HTTPS](https://ssl.sh/zh/guides/redirect-http-to-https/)。
- **访问提示证书过期**：自有证书到期没更换，见 [NET::ERR_CERT_DATE_INVALID](https://ssl.sh/zh/errors/net-err-cert-date-invalid/)。
- **页面提示部分内容不安全**：页面里有 HTTP 资源，见 [混合内容警告](https://ssl.sh/zh/errors/mixed-content-warning/)。
