ALIYUN::FC::CustomDomain类型用于创建自定义域名。

语法

{
  "Type": "ALIYUN::FC::CustomDomain",
  "Properties": {
    "ApiVersion": String,
    "Protocol": String,
    "RouteConfig": Map,
    "CertConfig": Map,
    "DomainName": String
  }
}

属性

属性名称类型必须允许更新描述约束
ApiVersionStringAPI版本
ProtocolString协议类型取值:
  • HTTP
  • HTTPS
RouteConfigMap路由表配置详情请参见RouteConfig属性
CertConfigMap证书信息详情请参见CertConfig属性
DomainNameString域名

RouteConfig语法

"RouteConfig": {
  "Routes": List
}

RouteConfig属性

属性名称类型必须允许更新描述约束
RoutesList路由列表 详情请参见Routes属性

Routes语法

"Routes": [
  {
    "Path": String,
    "FunctionName": String,
    "ServiceName": String,
    "Qualifier": String
  }
]  

Routes属性

属性名称类型必须允许更新描述约束
PathString自定义域名的请求路径,例如:/login/*
QualifierString别名。
FunctionNameString请求路径对应的函数。
ServiceNameString函数所属服务。

CertConfig语法

"CertConfig": {
  "CertName": String,
  "PrivateKey": String,
  "Certificate": String
}

CertConfig属性

属性名称类型必须允许更新描述约束
CertNameString证书的自定义名字
PrivateKeyString私钥使用换行符\n写成一行。
CertificateString证书内容使用换行符\n写成一行。

返回值

Fn::GetAtt

  • DomainName:域名。
  • Domain:协议和域名。

示例

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters: {}
    Resources:
      CustomDomain:
        Type: ALIYUN::FC::CustomDomain
        Properties:
          Protocol: HTTP
          DomainName: TestDomain
    Outputs:
      DomainName:
        Description: The domain name
        Value:
          Fn::GetAtt:
            - CustomDomain
            - DomainName
      Domain:
        Description: The domain with protocol.
        Value:
          Fn::GetAtt:
            - CustomDomain
            - Domain
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
      },
      "Resources": {
        "CustomDomain": {
          "Type": "ALIYUN::FC::CustomDomain",
          "Properties": {
            "Protocol": "HTTP",
            "DomainName": "TestDomain"
          }
        }
      },
      "Outputs": {
        "DomainName": {
          "Description": "The domain name",
          "Value": {
            "Fn::GetAtt": [
              "CustomDomain",
              "DomainName"
            ]
          }
        },
        "Domain": {
          "Description": "The domain with protocol.",
          "Value": {
            "Fn::GetAtt": [
              "CustomDomain",
              "Domain"
            ]
          }
        }
      }
    }