我有一个应用程序,需要将其移至云并在多个云服务器实例上运行。当用户在我的应用程序中注册时,他会获得一个可以填充其内容的(子)域。例如,如果 user1 注册,他会获得一个 URL,如 user1.mydomain.com。我的应用程序在内部创建一个新的 vhost 文件并重新加载 apache。如果用户决定要为我的服务付费,那么他也可以使用自己的域名。因此,他将其域的 DNS 更改为我的服务器,而我的应用程序在相应的 vhost 中更改 ServerName 并重新加载 apache。然后用户可以使用自己的域,如 www.user1.com。
现在,这非常有效。但现在我必须将应用程序移至云中,其中至少有 3 个云服务器在负载平衡器后面运行。
那么如果有新用户注册,我该如何在所有这些 Web 服务器之间同步 vhost 配置文件?我考虑过 rsyncing /etc/apache2/sites-available 目录,但是其他 apache 服务器如何才能全部重新加载呢?
有没有更好的解决办法?最重要的是不要重启apache,只能重新加载。