使外部域指向可能的虚拟主机上的子域 - GoDaddy

使外部域指向可能的虚拟主机上的子域 - GoDaddy

我对此 DNS 一无所知。我甚至不知道这是否应该在 stackoverflow 或 serverfault 上,但无论如何...

我有一个网站,example.com其 IP 为1.2.3.4,我有一个子域名,sub.example.com其 IP 地址也为1.2.3.4。此网站注册于去吧爸爸

我假设我的网站位于虚拟主机上,因为http://1.2.3.4显示的页面与我的主页不同http://example.com,而我位于共享主机上

该服务器正在运行 Apache 2.2

现在我有另一个域名(my-other-domain.com),它没有在去吧爸爸而其他人正在管理它。他只要求提供服务器的 IP 地址(即1.2.3.4)。我想my-other-domain.com指向sub.example.com。如果他创建A-Record指向my-other-domain.com我的服务器 IP 即1.2.3.4,它会去哪里?我是否也需要编辑我的A-Records?因为我假设我的网站在虚拟主机上,所以我不能保证我的名称服务器已经知道谁my-other-domain.com的 !

我无法访问 Apache conf 文件。有人熟悉 GoDaddy 控制面板吗?

答案1

目前使用的技术被称为基于名称的虚拟主机。Web 服务器从客户端请求中读取主机头,搜索其上的主机列表,然后显示相关网站,如果匹配失败则显示默认网站。

您需要将 sub.example.com 配置为 my-other-domain.com 的别名。最容易实现的方式是服务器别名指令范围内虚拟主机sub.example.com 的定义

<Virtualhost *:80>

    ServerName sub.example.com
    ServerAlias my-other-domain.com

</VirtualHost>

答案2

您必须了解 DNS 和 Apache/HTTP 如何关联。

  • 如果您http://1.2.3.4从浏览器联系,它将直接联系服务器并要求提供站点的默认文档1.2.3.4,这通常不是共享主机上的主站点,而是提供商配置的内容。

  • 如果您联系http://example.com,您的浏览器将向 DNS 询问地址example.com1.2.3.4.),然后联系服务器并请求该站点的默认文档example.com,该站点是您的主站点。

  • 也是如此sub.example.com,但它当然会要求该子站点的默认文档。

  • 如果您现在有这个其他域名my-other-domain.com,您的浏览器将获取与以前相同的 IP 并向服务器请求此域名的默认文档,但由于 Apache 不知道具有此名称的站点,它将恢复到第一种情况下的默认情况,并将像 一样提供默认文档http://1.2.3.4(这是最可能的配置,但其他配置也是可能的)。

因此,您需要为新域配置 Apache。具体如何配置在很大程度上取决于您所使用的系统。可能是某些配置面板软件(如 Plesk),或者提供商需要自己配置,或者您可能需要手动编辑配置文件。

相关内容