将域名解析为子域名

将域名解析为子域名

想要将完整域名解析为第二个域名上的子域名:

例如,如果我有这个子域名:

subdomain.firstdomain.com

第二个域:

seconddomain.com

我希望 seconddomain.com 解析第一个子域,以便用户始终可以查找,例如:seconddomain.com/whatever.html代替subdomain.firstdomain.com/whatever.html

两个域名都在同一台服务器上,相同的 IP,并且我们拥有完全的控制权。

我希望我的解释已经很清楚了。

也许配置 CNAME 或添加 .htaccess 文件?

答案1

有多种方法可以实现您的目标,但是,无论采用哪种方法,您都需要:

  1. 指向您的 Apache 服务器的 DNS 记录。
  2. Apache 重写(重定向、重新映射等)服务器端以更改显示的主机名subdomain.firstdomain.comseconddomain.com

 

1.DNS 记录

你没有提供任何信息,但你的 DNS 在哪里firstdomain.com托管,您需要创建一个一个记录CNAME 记录为了subdomain.firstdomain.com以及另一个www版本(如果您希望包含在内)。

  • 如果使用记录,你需要输入 Apache 服务器的公共 IP 地址
  • 如果使用CNAME 记录,您需要输入如下主机名seconddomain.com已经解析为你的 Apache 服务器的公共 IP 地址

示例:DNS 记录

类型 领域 IP/主机名
A subdomain.firstdomain.com ###.###.###.###
别名记录 www.subdomain.firstdomain.com subdomain.firstdomain.com

 

2. Apache:重写

有不同的方法,但鉴于你的目标是使用seconddomain.com而不是其他主机名subdomain.firstdomain.com [www.subdomain.firstdomain.com]到达同一站点,规范主机名是专为此用途而设计的,因此可能是一种好方法。

以下规则不涉及mod_rewrite,但使用重定向放置在非规范主机名的虚拟主机中的指令:

<VirtualHost *:80>
  ServerName subdomain.firstdomain.com
  ServerAlias www.subdomain.firstdomain.com

  Redirect "/" "http://seconddomain.com/"
</VirtualHost>

<VirtualHost *:80>
  ServerName seconddomain.com
</VirtualHost>

Apache 重写:使用 mod_rewrite 进行重定向和重新映射

相关内容