nit*_*ins 25 ssl certificate https apache-2.2
我知道设置 SSL 需要专用 IP。如果我们为共享 IP 的域添加 SSL 会发生什么?(名称虚拟主机)
peh*_*hrs 29
我认为如何解释虚拟主机和 SSL/TLS 的真正问题是一个好主意。
当您通过 HTTP 连接到 apache 服务器时,您会同时发送一组 http 标头。它们看起来像这样:
GET /index.html HTTP/1.1
Host: www.nice-puppies.com
Run Code Online (Sandbox Code Playgroud)
如果您有虚拟主机,apache 会查看 hosts 字段,然后为您获取正确的 index.html。问题是当您添加 SSL/TLS 时。服务器在您发送 http 请求之前设置加密。因此,服务器不知道您是要访问 www.nice-puppies.com 还是 www.evil-haxxor.com,直到身份验证/加密完成之后。服务器无法猜测(因为发送错误的证书会给您带来令人讨厌的错误消息)。
一种解决方案是通配符证书(如上所述),它对 *.nice-puppies.com 有效。这样你就可以对多个域使用相同的证书,但你不能拥有 *.com 证书(好吧,你可以,但对其他人来说会很糟糕),所以通常你需要为每个域使用单独的 IP HTTPS 域。
小智 9
这个问题的真正解决方案是“服务器名称指示”:
http://en.wikipedia.org/wiki/Server_Name_Indication
它才刚刚开始在服务器和 Web 客户端中推出,因此您现在还不能真正使用它,但希望几年后这不会成为大问题。
| 归档时间: |
|
| 查看次数: |
24008 次 |
| 最近记录: |