14

我创建了一个网站,并将其放在带有 USRNAME.github.com 的 repo 中的 github 上。首先,当我访问该网站时,我的网站显示正确。然后我买了一个域名,比如说example.com。我在 repo 中放置了一个 CNAME 文件,所以现在 USRNAME.github.com 转发到 example.com。

我知道我必须将我的域指向 github 服务器才能让我的网站显示在 example.com,但我不确定如何。我通过 gandi.net 创建了该站点。我尝试编辑区域文件以使用 USRNAME.github.com 获得 CNAME 条目,但这不起作用。我还尝试编辑 DNS 服务器名称,但我在那里放置的条目似乎无效。

任何帮助将不胜感激。谢谢。

4

2 回答 2

29

如您所见,github端的CNAME文件必须通过registrar端的自定义DNS设置完成,才能完成您的域名(example.com)与github上的子域的匹配。github 需要 CNAME 文件将其自己的 DNS 区域 (192.30.252.153) 上的传入请求路由到正确的用户子域。

因此,缺少的步骤是让您的域实际上指向 github 的 DNS 区域。在注册商方面 (gandi.net),您可以通过编辑附加到您的域的 DNS 区域文件来实现。此区域文件描述了您的域所属的 DNS 区域的分层域名结构。您要做的是更改 DNS 区域的某些部分与 IP 之间的映射。当您想将基于顶级域名的域名指向任意 IP v4(这里是位于 192.30.252.153 的 github 的 DNS 区域)时,您有兴趣在您的自己的区域。

gandi.net 的具体答案:

您可以在此处查看区域文件的设置列表。Gandi 的一项新功能是“版本”:可以创建不同版本的区域文件,并且一次只有一个版本处于活动状态。

要调整 github 的区域文件,首先单击“创建新版本”。它只会创建当前激活版本的副本。

首选的连接方式是添加一个新的 CNAME 映射,从 *.{yourdomain.tld} 到 {youraccount}.github.io。比如我的 kaibun.net 域必须是 chikamichi.github.io 的门面,所以我添加了一个 CNAME 映射 *.kaibun.net 到 chikamichi.github.io。(最后一个点在 gandi 的配置中是强制性的)。

您可能还想编辑 * 和 @ 记录类型设置,例如,如果您只想让整个 DNS 区域表现得像“代理”(这意味着无论如何它都会“重定向”到您的 github 子域)。但这不是必需的,因此此步骤是可选的。我假设您仍处于正常编辑模式。单击 * 行右侧的钢笔图标。保持所有字段不变,但“值”之一:粘贴 github URI(github 文档建议使用 204.232.175.78;但您可能在 Internet 上找到了不同的值:不要使用它们)。验证,然后对 @ 行进行相同的操作。

准备好后不要忘记单击“激活此版本”。检查“活动版本号”是否正确。更改将需要一些时间来传播。

详细示例和程序: http ://wiki.gandi.net/dokuwiki/en/dns/zone/a-record

于 2013-03-13T04:13:22.173 回答
0

您需要设置一个指向 github 服务器的 A 记录。你说你使用了 gandi.net,所以基本上你可以通过添加(或修改)一个指向 github 的 A 记录来更改顶级域的 DNS 设置。

如果需要,您可以通过在 DNS 中添加 CNAME 以指向顶级域或再次指向 github 的 A 记录来添加子域(如 www.)。

于 2012-08-24T00:13:13.313 回答