我有一个运行 Apache 的站点,它包含多个 VHOST。我没有为机器设置多个 IP 地址的选项,但我想通过 SSL 以某种方式访问每个 VHOST。有办法吗?
我想我不能指望https://realhttps,https://vhost1和https://vhost2工作,但是有没有一种简单的方法可以配置 mod_rewrite 来使https://realhttps/vhost1从中获取内容http://vhost1和https://realhttps/vhost2从中获取内容http://虚拟主机2?
答案1
这几乎是一个常见问题解答,但我无法(快速)找到其他答案,因此:
您需要服务器名称指示 (SNI)。其原理如下:http://en.wikipedia.org/wiki/服务器名称指示,Apache 的实践位于http://wiki.apache.org/httpd/NameBasedSSLVHostsWithSNI。
问题是它需要相当现代的 Apache、相当现代的 SSL 和(这是杀手级的)浏览器支持。阅读这两页,您应该知道 SNI 是否适合您。
如果不是,请重述 mod_rewrite 问题。