跳到主要内容

gateway

cloudbaserc.json 的 gateway 字段用于 tcb deploy 声明式部署网关,定义如何把 HTTP 请求按「域名 + 路径」转发到云函数、静态托管等上游服务。

属性值
类型Object
说明网关路由配置,用于 tcb deploy 声明式部署网关

子字段​

字段类型必填说明
routesArray<Object>是网关路由列表

routes[]​

字段类型必填默认值说明
pathString是—URL 路径,如 /api。必须以 / 开头,不支持通配符,每段仅允许字母、数字、.、_、-,每段不超过 50 字符;不可使用保留前缀 /__auth、/.well-known
targetString是—目标资源:function:<name>(云函数)或 hosting:<name>(静态托管)。云函数自动区分类型:HTTP 型创建为 WEB_SCF 路由、Event 型创建为 SCF 路由;hosting 只支持一级路径(如 / 或 /web),多级路径报错
domainString否环境默认域名绑定的自定义域名。未绑定时 tcb deploy 自动绑定(幂等),无需先执行 tcb domains add
certIdString否—SSL 证书 ID。显式配置优先;未配置且域名未绑定时按域名匹配已签发证书(仅 Status=1 未过期),匹配不到则部署报错
accessTypeString否DIRECT接入方式:DIRECT / CDN(即将下线)/ CUSTOM(需配 customCname)/ EO
customCnameString否—accessType=CUSTOM 时必填的 CNAME 记录
protocolString否HTTP_AND_HTTPS域名协议:HTTP / HTTPS / HTTP_AND_HTTPS / HTTP_TO_HTTPS / HTTPS_TO_HTTP
enableBoolean否true域名启用状态,作用于域名绑定,取该域名分组第一条路由的配置;路由本身始终启用
pathRewriteObject否—路径重写:{ "prefix": "/newpath" } 或 { "staticStorePrefix": "/xxx" }。两者只能填一个;hosting 路由未配置时自动生成 prefix=对应 hosting 的部署路径
enablePathTransmissionBoolean否false路径透传:true 传完整路径给上游,false 只传匹配后的路径。hosting 路由未显式配置 pathRewrite 时开启会与自动生成的重写冲突报错
enableAuthBoolean否false是否开启身份认证
qpsPolicyObject否—QPS 限频:{ "qpsTotal": 100-100000, "qpsPerClient": { "limitBy": "ClientIP" | "UserID", "limitValue": 0-30 } },limitBy 与 limitValue 均必填

示例​

{
"gateway": {
"routes": [
{ "path": "/api", "target": "function:api-server" },
{ "path": "/web", "target": "hosting:web", "accessType": "CDN" }
]
}
}

字段说明​

accessType 接入方式

取值说明
DIRECT直接接入,DNS 解析到网关 IP,延迟最低
CDN走云开发 CDN 加速,即将下线,建议迁移到 EO
CUSTOM自定义 CNAME 接入,需同时配 customCname
EOEdgeOne 边缘加速

protocol 协议类型

取值说明
HTTP仅 HTTP
HTTPS仅 HTTPS,需配 certId
HTTP_AND_HTTPSHTTP 与 HTTPS 双协议,默认
HTTP_TO_HTTPSHTTP 自动 301 重定向到 HTTPS,生产环境推荐
HTTPS_TO_HTTPHTTPS 自动 301 重定向到 HTTP

其他字段:

  • customCname:accessType=CUSTOM 时必填的 CNAME 解析记录值,需先在 DNS 服务商添加 CNAME 解析
  • certId:域名级字段,只在域名首次创建时生效,已绑定域名不覆盖原值;protocol=HTTPS 时必填
  • enable:域名级开关,同域名分组下所有路由共享,以第一条路由的配置为准
  • enablePathTransmission:hosting 路由未显式配 pathRewrite 时开启会与自动生成的重写冲突报错
  • enableAuth:开启后请求需带身份凭证(SDK 登录后获取的 token 通过 Authorization 头透传)
  • qpsPolicy:qpsTotal 为全局 QPS 上限,qpsPerClient 为单客户端上限,按 ClientIP 或 UserID 限频