由于集成的开发者门户中存在虚拟主机错误,自定义网域配置失败

您正在查看的是 Apigee Edge 文档。
转到 Apigee X 文档
信息

问题

用户在为集成的开发者门户配置密钥库、别名和网域信息时,会收到 Invalid virtual host value 错误:发布 > 门户 > 开发者门户 > 设置 > 网域

错误消息

系统会显示以下错误消息:

Invalid virtual host value (id: <value>)

Edge 界面中会显示错误消息,如下所示:

门户 > 开发者门户 > 设置 > 网域" title="Domains">

可能的原因

原因 说明 适用于以下项目的问题排查说明:
提供的 TLS 证书链未采用 PEM 格式 虚拟主机中使用的 TLS 证书链必须采用 PEM 格式。如果使用非 PEM 格式的 TLS 证书链,自定义网域配置将失败。 Edge 公有云用户
在单个文件中提供了 TLS 证书和密钥 上传到密钥库时,需要在单个文件中提供 TLS 证书链和私钥。否则,自定义网域配置将失败。 Edge 公有云用户

原因:提供的 TLS 证书链未采用 PEM 格式

诊断

  1. 验证 TLS 证书链是否采用 PEM 格式
  2. 如果特定 TLS 证书链未采用 PEM 格式,则会导致虚拟主机创建过程在集成开发者门户中失败。因此,系统会在 Edge 界面的自定义网域配置页面上向用户显示上述错误消息。

分辨率

如果您已确定 TLS 证书链未采用 PEM 格式,请执行以下步骤来解决此问题:

  1. 将 TLS 证书链转换为 PEM 格式
  2. 验证 TLS 证书链是否有效。
  3. 从特定密钥库中移除现有 TLS 证书链和私钥。
  4. 使用 Edge 界面或 Management API 中的密钥别名将包含 PEM 格式的 TLS 证书链和包含私钥的文件上传到密钥库。
  5. 在集成式开发者门户中配置密钥库、别名和域名:发布 > 门户 > 开发者门户 > 设置 > 网域
  6. 点击保存

原因:TLS 证书和密钥是在单个文件中提供的

诊断

  1. 确认给定 TLS 证书链在上传到密钥库的文件中同时包含证书和私钥。
  2. 在您将 TLS 证书链和私钥上传到 Apigee 密钥库时所用的系统文本编辑器中查看原始源文件。
  3. 如果该文件同时包含 TLS 证书和私钥,则证书链中的每个 TLS 证书都以以下行开头:

    -----BEGIN CERTIFICATE-----

    结尾是以下代码行:

    -----END CERTIFICATE-----

    TLS 证书后跟私钥,私钥以下面的行开头:

    -----BEGIN RSA PRIVATE KEY-----

    结尾是以下代码行:

    -----END RSA PRIVATE KEY-----

    如下例所示:

    -----BEGIN CERTIFICATE-----
    CzAJBgNVBAYTAkJCMQswCQYDVQQIDAJCQjELMAkGA1UEBwwCQkIxDzANBgNVBAoM
    BkJCIEx0ZDELMAkGA1UECwwCQkIxEDAOBgNVBAMMB2Zvby5vcmcxGjAYBgkqhkiG
    9w0BCQEWC2FiY0Bmb28ub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
    AQEA8IN15+8HrfeSVf4NIj7mM4jjms89EUX4HKrey+lm1+ljv3OGw+NK7BCHvoV3
    vZ+KXMHTtFeeFd1NgQZnDdbmuD0jTvvF7YoC/h6bLPytJquQJZykm9DyszsmACI8
    ...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    MIIDbjCCAlYCCQCrcuwFhXCcujANBgkqhkiG9w0BAQsFADB5MQswCQYDVQQGEwJB
    QTELMAkGA1UECAwCQUExCzAJBgNVBAcMAkFBMQ8wDQYDVQQKDAZBQSBMdGQxCzA
    BgNVBAsMAkFBMRMwEQYDVQQDDApjYS5mb28ub3JnMR0wGwYJKoZIhvcNAQkBFg5h
    YmNAY2EuZm9vLm9yZzAeFw0xOTEwMDQwNTA0MzVaFw0yOTEwMDEwNTA0MzVaMHk
    CzAJBgNVBAYTAkFBMQswCQYDVQQIDAJBQTELMAkGA1UEBwwCQUExDzANBgNVBAo
    ...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    YcJpTL5yNyQE3NIXPGCiTrrSEBSX5X9ae8C/URlyWPbJ3jBE7GH4u6id5qEcgx6I
    /6QHDyPIhFcwfdU3nZbzZfwCYfH9SI5hQPscfGTotNxZxDwNIzuqqrIhari4e6lc
    mlEa/CDzOzvdYTX7RT1MmBY9US8JY5xhUKk0gQbhCfB7TcpvySldTbiUGQVn8h62
    /fJDhNQlzV7Maogc7te9DWW/HhYfGTFKOwIDAQABMA0GCSqGSIb3DQEBCwUAA4IB
    AQAT/5FCiKJ/Pv62bl+GYuuc0gXXeumW2205dN5cXBAVZ3kRqHjR9tMCx3u+F2Td
    ...
    -----END CERTIFICATE-----
    -----BEGIN RSA PRIVATE KEY-----
    MIIEowIBAAKCAQEA8IN15+8HrfeSVf4NIj7mM4jjms89EUX4HKrey+lm1+ljv3OG
    w+NK7BCHvoV3vZ+KXMHTtFeeFd1NgQZnDdbmuD0jTvvF7YoC/h6bLPytJquQJZyk
    m9DyszsmACI8hK4azrd7zZqTETVZN+mxOiYBfa1E1pE8v/bdIqnLTICmFbIQ2PVF
    zc0anobltRRI4/OcRb7QPQUk+dBxU7XyyAhcACROwaeT8yqksnYNANBcnMiS5qH+
    sucJFNJ9bGIuWIwhsYVxzrANe9ttVvie38Cj6Go+UiIzF3VAyRkIE7MvW9Qc5m0O
    ...
    -----END RSA PRIVATE KEY-----
  4. 如果您确定 TLS 证书链和私钥均已合并到单个文件中并上传到密钥库,那么这就是在集成开发者门户中创建虚拟主机失败的原因。因此,系统会在 Edge 界面的自定义网域配置页面上向用户显示上述错误消息。

分辨率

如果 TLS 证书 PEM 文件同时包含 TLS 证书和私钥,请按照以下步骤解决问题:

  1. 将私钥从 TLS 证书 PEM 文件移到单独的密钥文件中。
  2. 从特定密钥库中移除现有的 TLS 证书。
  3. 验证 TLS 证书链是否采用 PEM 格式
  4. 如果不是,请 将 TLS 证书链转换为 PEM 格式
  5. 验证 TLS 证书链是否有效。
  6. 使用 Edge 界面或 Management API 中的密钥别名,将包含转换为 PEM 格式的 TLS 证书链和包含私钥的文件上传到密钥库。
  7. 在集成式开发者门户中配置密钥库、别名和域名:发布 > 门户 > 开发者门户 > 设置 > 网域
  8. 点击保存

如果问题仍然存在,请转到必须收集诊断信息

必须收集的诊断信息

如果在按照上述说明操作后问题仍然存在,请收集以下诊断信息并将其分享给 Apigee Edge 支持

  • Apigee Edge Cloud 组织名称
  • Apigee Edge Cloud 集成式开发者门户名称
  • 在门户环境中创建的密钥库的名称
  • 别名
  • 自定义域名
  • 捕获错误消息的自定义网域配置页面的屏幕截图
  •