您正在查看的是 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 格式
诊断
- 验证 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 集成式开发者门户名称
- 在门户环境中创建的密钥库的名称
- 别名
- 自定义域名
- 捕获错误消息的自定义网域配置页面的屏幕截图