GitHub项目页面的自定义域

我在我的http://github.com回购协议中有一个gh-pages分支。 如果我访问http://myuser.github.com/myrepo,GitHub项目页面可以正常工作

我想设置一个自定义域(myexample.com)来提供这个项目页面。 我想这两个 myexample.comwww.myexample.com就可以提供这些项目的页面。

GitHub页面帮助表示在DNS中创建A记录和CNAME记录。 A记录是有道理的,但我不知道CNAME记录要在我的DNS中记录。

gh-pages文档声称为'charlie.github.com'这个用户页面存储库创建一个CNAME记录。 我没有用户页面存储库 - 我只有一个项目存储库和一个我想用于myexample.comwww.myexample.comgh-pages分支。

我是否需要制作用户页面存储库才能使用我的项目页面www.myexample.com和myexample.com?

我只是想尝试一下,但我想确保这个工作正常,因为我已经拥有www.myexample.com直播并且不想犯错。

我发邮件给GitHub支持,他们的回复是

就我所知,你们不能指向同一个gh页面。

我很难相信他们只会支持项目页面的A记录。

有没有人成功地做过这件事?


所以我想通了。 詹姆斯麦克劳克林给了我需要的推动力。

要为处理www.yourdomain.com和yourdomain.com的gh-pages Project Pages回购库设置一个自定义域(假设您的回购库中已经有一个gh-pages分支):

  • 从你的项目回购,gh-pages分支。 用yourdomain.com内容创建一个CNAME文件。 承诺然后推。
  • 在你的DNS管理器中,设置两个cname记录。 一个用于根尖(@),另一个用于www。 都指向YOURusername.github.io 。 如果您的DNS提供商不支持根尖端(@)上的ALIAS记录,只需创建指向192.30.252.153192.30.252.154 A记录
  • 等待你的名字服务器更新:

    dig yourdomain.com +nostats +nocomments +nocmd


  • 概观

    当涉及到项目页面时,文档有点令人困惑,而不是用户页面 。 感觉你应该做得更多,但实际上这个过程非常简单。

    它涉及:

  • 为裸(没有www)域设置2静态A记录。
  • 为www创建一个指向GitHub URL的CNAME记录。 这将为您处理www重定向。
  • 在gh-pages分支的项目根目录下创建一个名为CNAME(大写)的文件。 这将告诉Github要回应的URL。
  • 等待一切传播。
  • 你会得到什么

    您的内容将通过http://nicholasjohnson.com形式的网址提供。

    访问http://www.nicholasjohnson.com将返回301重定向到裸域。

    该路径将受到重定向的支持,因此到http://www.nicholasjohnson.com/angular的流量将被重定向到http://nicholasjohnson.com/angular。

    每个存储库可以有一个项目页面,因此如果您的回购是开放的,您可以拥有尽可能多的项目。

    过程如下:

    1.创建一条记录

    对于A记录,将@指向以下IP地址:

    @: 192.30.252.154
    @: 192.30.252.153
    

    这些是您的内容将从中提供的静态Github IP地址。

    2.创建一个CNAME记录

    对于CNAME记录,将www指向yourusername.github.io。 注意尾随的句号。 还请注意, 这是用户名,而不是项目名称 。 您不需要指定项目名称。 Github将使用CNAME 文件来确定从哪个项目提供内容。

    例如

    www: forwardadvance.github.io.
    

    CNAME的目的是将所有www子域流量重定向到一个将重定向到裸域的GitHub页面。

    以下是我用于自己的网站http://nicholasjohnson.com的配置截图:

    A和CNAME记录需要Github静态页面

    3.创建一个CNAME文件

    将名为CNAME的文件添加到gh-pages分支中的项目根目录中。 这应该包含你想要服务的域名。 确保你提交并推送。

    例如

    nicholasjohnson.com
    

    这个文件告诉GitHub使用这个回购来处理到这个域的流量。

    等一下

    现在等5分钟,你的项目页面现在应该是活的。


    如果您想知道如何让您的域名显示为www.mydomain.com而不是将www请求重定向到mydomain.com ,请尝试以下操作:

    gh-pages分支上的CNAME文件将包含一行:

    www.mydomain.com (而不是mydomain.com

    无论您是否偏好重定向(换句话说,无论您在gs-pages分支的CNAME文件中有什么内容), 使用您的DNS提供商 ,您都应该像这样设置它:

    A      @    192.30.252.154
    A      @    192.30.252.153
    CNAME  www  username.github.io
    
    链接地址: http://www.djcxy.com/p/7849.html

    上一篇: Custom domain for GitHub project pages

    下一篇: What is the difference between Forking and Cloning on GitHub?