当前情况:我的公司运行多个单独的 EC2 实例,使用来自公共顶级域名的多个子域名来托管独特的网站。(例如 abc.foo.com 和 def.foo.com)。
目前,这些网站均独立执行 SSL 卸载,但使用通用证书。我们目前运行 Ubuntu LTS,包括 10.04、12.04 和 14.04,均运行 Apache(2.2 或 2.4)。
我们的系统使用 VHost 文件在实例上建立站点,在少数运行多个站点的实例上,我们使用具有不同端口和文档根目录的多个 VHost(abc.foo.com 为 :80 /var/www/abc,def.foo.com 为 :81 /var/www/def)。所有这些实例运行时使用的可用资源不到 2%,并且全部来自同一个整体代码库。
期望的最终状态:我想使用 Apache 2.4 将所有未使用的小型服务器合并到单个 Ubuntu 14.04 服务器中,并在 AWS 中的单个 ELB 上运行所有这些站点,由 CloudFront 提供前端和缓存,其中 SSL 卸载发生在 ELB 上。
问题:我不知道该怎么做……有没有办法让多个站点使用相同的 IP 和端口,并可以使用 ELB 进行前端?由于 Apache 无法使用具有相同 IP/端口的 VHost 启动,我甚至不知道从哪里开始,而且我的一些基本 Google 搜索也没有找到此类场景的任何示例或讨论。