您正在查看 Apigee Edge 文档。
前往 Apigee X 文档。 信息
问题
用户在为集成式开发者门户配置密钥库、别名和网域信息时,会收到虚拟主机值无效错误:发布 > 门户 > 开发者门户 > 设置 > 网域。
出错提示
系统会显示以下错误消息:
Invalid virtual host value (id: <value>)
错误消息会显示在 Edge 界面中,如下所示:
门户 > 开发者门户 > 设置 > 域名" title="域名">
可能的原因
| 原因 | 说明 | 适用的问题排查说明 |
|---|---|---|
| 提供的 TLS 证书链不是 PEM 格式 | 虚拟主机中使用的 TLS 证书链必须采用 PEM 格式。如果使用非 PEM 格式的 TLS 证书链,自定义网域配置将失败。 | Edge Public Cloud 用户 |
| TLS 证书和密钥在单个文件中提供 | 上传到密钥库时,TLS 证书链和私钥需要分别在单独的文件中提供。否则,自定义网域配置将失败。 | Edge Public Cloud 用户 |
原因:提供的 TLS 证书链不是 PEM 格式
诊断
- 验证 TLS 证书链是否采用 PEM 格式。
- 如果特定 TLS 证书链不是 PEM 格式,则会导致集成式开发者门户中的虚拟主机创建过程失败。因此,Edge 界面的自定义网域配置页面上会向用户显示上述错误消息。
分辨率
如果您已确定 TLS 证书链不是 PEM 格式,请执行以下步骤来解决此问题:
- 将 TLS 证书链转换为 PEM 格式。
- 验证 TLS 证书链是否有效。
- 从特定密钥库中移除现有的 TLS 证书链和私钥。
- 使用 Edge 界面或 Management API 中的密钥别名,将包含 PEM 格式的 TLS 证书链的文件和包含私钥的文件上传到密钥库。
- 在集成式开发者门户中配置密钥库、别名和域名:发布 > 门户 > 开发者门户 > 设置 > 域名。
- 点击保存。
原因:TLS 证书和密钥是在单个文件中提供的
诊断
- 验证给定的 TLS 证书链是否包含上传到密钥库的同一文件中的证书和私钥。
- 在您用于将 TLS 证书链和私钥上传到 Apigee 密钥库的系统上,使用文本编辑器查看原始源文件。
-
如果该文件同时包含 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-----
- 如果您确定 TLS 证书链和私钥已全部合并到一个文件中并上传到密钥库,那么这就是集成式开发者门户中虚拟主机创建失败的原因。因此,Edge 界面上的自定义网域配置页面会向用户显示上述错误消息。
分辨率
如果 TLS 证书 PEM 文件同时包含 TLS 证书和私钥,请执行以下步骤来解决此问题:
- 将私钥从 TLS 证书 PEM 文件移至单独的密钥文件。
- 从特定密钥库中移除现有 TLS 证书。
- 验证 TLS 证书链是否采用 PEM 格式。
- 如果不是,请 将 TLS 证书链转换为 PEM 格式。
- 验证 TLS 证书链是否有效。
- 使用 Edge 界面或 Management API 中的密钥别名,将包含转换为 PEM 格式的 TLS 证书链的文件和包含私钥的文件上传到密钥库。
- 在集成式开发者门户中配置密钥库、别名和域名:发布 > 门户 > 开发者门户 > 设置 > 域名。
- 点击保存。
如果问题仍然存在,请转到必须收集诊断信息。
必须收集的诊断信息
如果按照上述说明操作后问题仍然存在,请收集以下诊断信息并将其提供给 Apigee Edge 支持团队:
- Apigee Edge Cloud 组织名称
- Apigee Edge Cloud 集成式开发者门户名称
- 在门户环境中创建的密钥库的名称
- 别名
- 自定义域名
- 自定义网域配置页面的屏幕截图,其中显示了错误消息