让多个域名指向单个 PHP 脚本

让多个域名指向单个 PHP 脚本

我希望多个域名指向单个 PHP 脚本,然后我可以使用 PHP 脚本来确定自动显示哪些内容。

例如,我的主域名可以mycoolscript.com

我希望我的客户能够使用他们自己的域名,例如:

coolclient.com
funclient.com
niceclient.com

我希望每个域实际上指向:

mycoolscript.com/client.php?domain=coolclient.com
mycoolscript.com/client.php?domain=funclient.com
mycoolscript.com/client.php?domain=niceclient.com

这样,我就可以根据domain变量显示内容。

我该如何正确执行此操作?我假设它需要一些 CNAME 逻辑或其他东西。但我不是服务器/域名专家。此外,我还希望子页面 URL 也能正常工作,例如coolclient.com/about-us,但我可能可以单独使用 PHP 完成所有这些工作。

任何帮助将不胜感激。

答案1

您应该避免使用 CNAME 记录来处理此问题。如果这样做,将来扩展或更改将会非常困难。

这些情况正是 Web 服务器将这些信息传递给 PHP 的原因。据我所知,没有哪个常见的 Web 服务器不这样做。

只需$_SERVER['HTTP_HOST']在您的 PHP 脚本中使用并将所有域指向同一台服务器。

答案2

在 DNS 中,您将每个域的 A 记录指向您的网络服务器的 IP 地址。

然后,您的 Web 服务器中就会有一个虚拟主机,它是默认虚拟主机,也就是说,所有未在 Web 服务器中配置的域都通过这个虚拟主机进行处理。

然后,在您的 PHP 脚本中,您使用HTTP_HOST标头来确定请求中的主机名是什么,并相应地处理请求。

相关内容