【发布时间】:2023-12-29 11:02:01
【问题描述】:
我有一个运行灯堆栈的 ubunto 虚拟机,现在,一个域名重定向到虚拟机的 IP 地址。 概念明智的主要原则是我希望用户注册一个帐户并获得一个在我自己域的子域上运行的“网站”。这部分很容易使用 apache vhosts 等中的通配符子域,并且使用 certbot 我设法自动使所有子域受 ssl 保护。
现在,如果客户想要购买他/她自己的域名,他们需要通过我或其他注册商将 A 记录指向我的 IP 地址,并将来自 www 的 CNAME 指向域名。最后,我需要在站点可用文件夹下添加一个 vhost 文件,为该新域名配置虚拟主机文件并“优雅地”重新启动 apache。
这就是问题所在。如何操作 apache vhosts 文件等,以便在我的主网站上按一下按钮即可完成此操作?我在后端使用 PHP,而在 php(shell exec 等)中执行它似乎存在安全风险..
我在 GCP 上运行,因此 GCP 的任何服务都可用。
提前致谢。
【问题讨论】:
-
我认为预配置的多站点虚拟主机将解决您的问题。请检查此链接(serverfault.com/questions/326130/…)。这是回答您的问题吗?
-
@AghilanB 只要我的客户在我的域上使用 store1.mydomain.com 之类的子域,预配置的虚拟主机就可以工作。我要问的是如何动态重新配置 apache,以便如果客户购买了 hisstore.com 之类的域,我可以将该域重定向到正确的文件夹。我可以手动购买添加一个新的 vhost 配置文件(:80 和:443),然后重新启动 apache,但我想知道是否有办法通过 php 或其他语言来做到这一点,以便系统将自身更新为客户在网页上按下按钮
标签: php apache google-cloud-platform virtual-machine virtualhost