拥有多个带有 SSL 的子域名——最佳做法?

拥有多个带有 SSL 的子域名——最佳做法?

我有一个网站,它有许多子域名(每个客户一个)。每个子域名的内容都不同,提取不同的数据、不同的布局等,所以我认为我不能只将一个目录别名为许多不同的子域名。我的问题是,这样做的最佳做法是什么?每个子域名都需要 SSL。我的设置是

  • 亚马逊 EC2 (Ubuntu)
  • 我的域名的通配符 SSL (*.mydomain.com)
  • 阿帕奇 2
  • PHP(灯)

目前,我只是在“/etc/hosts”中创建一个新条目,并在 Web 根目录中创建一个适当的位置(即 /var/www/abc.mydomain.com、/var/www/def.mydomain.com 等)。我刚刚发现我需要为每个子域分配一个唯一的 IP,而这对于 EC2 来说很棘手,因为它们会限制您可以拥有的数量(除非您跳过一些环节)。现在我有大约 10 个子域,这是可以管理的,但理论上我可以拥有数千个。

我是否只用了唯一可行的方法,或者是否有更好的方法值得我去研究?

答案1

将它们添加到 /etc/hosts 有什么特别的原因吗?如果主机名解析,那么对于更一般的目的来说,这应该足够了。

我喜欢您使用的目录结构,它与我使用的任何方法都非常相似。此外,我建议为每个子域指定单独的文件ErrorLogCustomLog

Zoredache 在 IP 方面提出了一个很好的观点,因为通配符证书应该可以消除添加子域时对多个 IP 的需求。此外,还有一个较新的服务器名称指示(SNI)功能消除了每个单独的 SSL 证书都需要一个 IP 的需要。

如果您有数千个,通常您可以考虑编写脚本来管理添加或删除 VirtualHosts、共享内容、重定向和其他潜在解决方案。选项将基于您当时的确切需求。

如果您谈论的是多用户系统,方法也完全不同。例如,每个域都位于 /home/user/public_html 或 /home/user/www 中。

相关内容