同一服务器上有多个域名(带 & 不带 www 前缀),运行相同的代码

同一服务器上有多个域名(带 & 不带 www 前缀),运行相同的代码

我们继承了以下网站设置:

  1. 一个主网站和大约 130 个辅助网站,所有网站都指向主网站域(通过 CNAME DNS 设置);
  2. 网站托管在 IIS 6 服务器上;
  3. 所有网站的代码都是相同的;
  4. 130 个二级网站显示的内容与主网站几乎相同,但每个域名都具有一些独特的差异;
  5. 内容是根据域名提供的。我的意思是,后台会读取浏览器的网址并相应地提供内容。

问题

目前,130 个网络域名如果没有 www 就无法运作。

尝试的解决方案

为 130 个域名的 DNS 分别设置一个指向主网站 IP 地址的 A 名称,但此举无效。这导致原始域名丢失,因此只能为主网站提供服务。

问题

纯粹的 DNS 设置解决方案可行吗?

是否存在一个直接的解决方案,不需要 131 个相同代码的版本和 131 个不同的 IP 地址?

我主要是一名前端开发人员,所有这些 DNS/服务器设置都有点超出我的熟悉范围,因此如果某些描述不合理,请原谅,如果您需要更多信息,请告诉我。提前谢谢您。

根据记录(啊!),这些是我们的提供商允许的 DNS 记录 星星

  1. A
  2. 高级
  3. 别名记录
  4. 墨西哥
  5. 国家标准
  6. TXT
  7. 防晒指数
  8. 服务车辆

答案1

您需要配置 DNS 和 Web 服务器。例如,对于“DOMAIN.tld”,您需要将 DNS 区域配置为包含以下两个条目:

  • DOMAIN.tld 的一个 A 记录
  • www.DOMAIN.tld 的一个 A 记录(均指向同一个 IP 地址)

需要将 Web 服务器配置为包含 DOMAIN.tld 和 www.DOMAIN.tld 的(通用)虚拟网站。对于 Apache HTTPD,这意味着一个是主主机 (DOMAIN.tld),另一个是别名 (www.DOMAIN.tld)。

答案2

如何在 DNS 服务器上添加新记录,

例如你的 DNS Conf

sample.com        A     202.xxx.xxx.xxx
example.com       CNAME sample.com
www.example.com   CNAME sample.com

希望这对您的问题有帮助:)

答案3

如果您的 DNS 提供商具有允许重定向“记录”的功能,我认为这是最简单的设置方法,无需在 Web 服务器上创建别名。使用重定向记录,将每个根域 (myexample.com) 重定向到 www 子域 (www.myexample.com)。虽然从技术上讲这实际上并不是一个纯粹的 DNS 设置解决方案,但我相信只要您的 DNS 提供商提供此功能,它就能满足您的需求。

您的 DNS 提供商是谁?

答案4

我曾使用过数千个主机名(子域)。您可能需要一个通配符 DNS 记录 (*.mydomain.com)。您可以使用 CNAME 记录将其别名化为主域的 A 记录(即使主域与通配符匹配,如 www.mydomain.com)。通配符记录将用于其他 CNAME 或 A 记录中未明确找到的任何子域,即使是具有多个子域的子域,如 www.sub1.sub2.mydomain.com。您可以为每个子域设置明确的条目,但如果它们都由同一个 Web 服务器处理,则没有必要这样做。

在 IIS 中,您必须将站点绑定到所有内容或 IP 地址(公共 IP 地址或防火墙将公共 IP 地址转发到的 DMZ 地址)。理论上,您可以绑定每个子域/域名,但这样绑定的数量会很多,而且考虑到您已有的数量,您可能会定期添加更多绑定,因此我不建议这样做。

相关内容