# 自定义域名

## 使用场景

1. 小程序/公众号前端调用云托管服务，**不需要使用域名**，请参考[微信小程序 - 访问云托管服务](/minigame/dev/wxcloudrun/src/development/call/mini) 或者 [公众号 - 访问云托管服务](/minigame/dev/wxcloudrun/src/development/call/h5) ，不需要参考本文档进行自定义域名绑定，也不需要域名备案。
2. 除小程序/公众号之外，服务还额外需要对外提供 API，因为默认公网域名仅可做测试之用，线上生产需要绑定自定义域名，**1 个自定义域名对应 1 个服务，1 个服务可以对应多个自定义域名**。

## 操作指引

![](https://res8.wxqcloud.qq.com.cn/wxdoc/3f83a461-720e-46da-9c51-aaa5bbd73e7a.png)

### 步骤一：域名准备

如无域名，可以前往腾讯云[注册域名](https://dnspod.cloud.tencent.com/);

### 步骤二：域名备案

如域名未在任何云服务厂商中备案过，可前往腾讯云进行[域名备案](https://cloud.tencent.com/document/product/243);

如域名不备案，则无法访问的。

- 微信云托管主要面向小程序/公众号业务，一般情况下无需使用自定义域名，因此暂未支持域名备案功能。当前推荐另外购买服务器专门做备案之用（买最便宜的即可）
- 后续将推出域名备案功能，也需要额外付费。

### 步骤三：绑定自定义域名

前往[微信云托管-服务管理 - 自定义域名](https://cloud.weixin.qq.com/cloudrun/customdomain)，点击「绑定自定义域名」；

![](https://res8.wxqcloud.qq.com.cn/wxdoc/6773545a-cdd2-481d-b404-4043c01214ad.png)

- 关联服务：选择自定义域名关联的服务；
- 域名：目标自定义网域名称（Domain Name），由一串用点分隔的字符组成。域名在云托管内用于访问服务，一个域名只能绑定一个服务，**域名一定需要完成域名备案，否则无法访问；**
- HTTPS：访问方式目前支持 HTTP、HTTPS 2 种方式，默认使用 HTTPS；
- 证书：HTTPS 访问需要上传证书，可前往购买证书的平台下载证书签名及私钥，证书文件分证书和私钥，一般建议传 `nginx` 等类型的文本证书，不支持二进制可执行证书。

点击「确定」，即可将自定义域名绑定到目标服务上，并在列表中生成一条绑定信息，提供「编辑」及「解绑」能力。

证书过期更新，直接「编辑」重新上传证书，不需要删除重新配置。

![](https://res8.wxqcloud.qq.com.cn/wxdoc/732e6fc8-a8d7-4298-9c3b-512d443a9baf.png)

### 步骤四：添加 CNAME 记录

绑定自定义域名后，域名列表中会返回 CNAME 信息;可前往 DNS 服务提供商（如 [DNSPod](https://dnspod.cloud.tencent.com/)）添加 CNAME 记录，将域名指向微信云托管返回的服务 CNAME 域名；如在 DNSPod 中配置，可查看[CNAME 配置指引](https://cloud.tencent.com/document/product/302/3450)。

- 微信云托管绑定域名也支持在其他云服务厂商中注册的域名；
- 域名需备案后才支持绑定；

![](https://res8.wxqcloud.qq.com.cn/wxdoc/1a93a4bb-a275-45a2-8866-c755af615311.png)

## 证书上传指引

推荐选择 `nginx` 证书，各证书支持情况如下：

![](https://res8.wxqcloud.qq.com.cn/wxdoc/e73fc843-fdd4-491c-be60-f79b26357423.png)

### 上传签名证书

证书通常是以 `.crt` 或 `.pem` 为扩展名的文件，使用文本编辑器打开证书文件可以看到内容 `BEGIN CERTIFICATE` 开头，`END CERTIFICATE` 结尾。

确认证书后，直接上传此证书，不要改变证书内容。

### 上传签名私钥

私钥通常以 `.key` 或 `.pem` 等为扩展名的文件，使用文本编辑器打开证书文件可以看到内容 `BEGIN PRIVATE KEY` 开头，`END  PRIVATE KEY` 结尾。

确认私钥后，直接上传此私钥，不要改变私钥内容。
