0

我有 2 个不同的应用程序。

1) tools.helpme.com要求用户提供客户端证书!

SSLCACertificateFile /usr/local/etc/apache22/certs/cacert.pem
SSLCertificateKeyFile /usr/local/etc/apache22/certs/server.key
SSLCertificateFile /usr/local/etc/apache22/certs/server.crt
SSLCertificateChainFile /usr/local/etc/apache22/certs/server.crt
SSLVerifyClient require

2) apps.helpme.com 仅需要来自服务器的基本 SSL!

SSLCACertificateFile /usr/local/etc/apache22/certs/cacert.pem
SSLCertificateKeyFile /usr/local/etc/apache22/certs/server.key
SSLCertificateFile /usr/local/etc/apache22/certs/server.crt
SSLCertificateChainFile /usr/local/etc/apache22/certs/server.crt
SSLVerifyClient none

我让他们每个人都独立工作 - 这是完美的。

但是,我不能让它们一起运行,它们位于不同的 VirtualHosts - 基于名称的主机上。

如果我尝试同时运行它们,似乎 (2) 优先且有效,但 (1) 获得 GATEWAY_TIMEOUT!该虚拟主机的错误日志显示:重新协商握手失败:客户端不接受!?

4

1 回答 1

2

您需要两个不同 IP 地址上的站点,因为 SSL 握手发生在发送 HOST http 标头之前。尽管使用相同的 IP,您可以在不同的端口号上运行,但这对于两个不同的 Web 服务并没有真正的帮助?

于 2010-08-26T09:18:54.637 回答