有许多SSL子域 – 最佳实践?

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

  • Amazon EC2(ubuntu)
  • 通配符SSL为我的域(* .mydomain.com)
  • Apache 2
  • PHP(LAMP)

目前,我只是创build一个新的入口“/ etc / hosts”和一个适当的位置在web根目录(即/var/www/abc.mydomain.com,/var/www/def.mydomain.com等)。 我刚刚发现,我需要为每个子域设置一个唯一的IP地址,而EC2则非常棘手,因为它们限制了您可以使用的数量(除非您跳过一些圈)。 现在我有大约10个子域,这是可pipe理的,但理论上我可以有数千个。

我是唯一可行的方法,还是有更好的方法可以调查?

有没有特别的理由把它们添加到/ etc / hosts? 如果主机名parsing,这应该是很多更普遍的目的。

我喜欢你正在使用的目录结构,这和我使用的任何方法都非常相似。 此外,我build议为每个子域指定单独的ErrorLogCustomLog文件。

Zoredache在IP上提供了一个绝妙的点,因为通配符证书在添加子域名时可以消除对多个IP的需求。 此外,还有一个更新的服务器名称指示 (SNI)function,可以消除每个单独的SSL证书需要IP。

如果你有成千上万,那么通常你可能会考虑编写一个脚本来pipe理添加或删除虚拟主机,共享内容,redirect和其他可能的解决scheme。 选项将根据您当时的确切需求而定。

如果您正在谈论多个用户系统,这些方法也有根本的不同。 例如,每个域将位于/ home / user / public_html或/ home / user / www。