我希望有一个用户页面和多个项目页面由GitHub Pages托管,但在 ONE 自定义域下可用(当然,每个GitHub页面存储库都有子域名) . 所以我的目标如下:
-
在http://blog.florianwolters.de,http://www.florianwolters.de和http://florianwolters.de下可用的一个用户页面(http://florianwolters.github.com) .
-
尽可能多的项目页面(例如http://florianwolters.github.com/pear在http://pear.florianwolters.de下可用 .
根据我目前的理解,GitHub Pages仅允许在Git存储库的根目录中的 CNAME
文件中定义的页面(包括用户页面和项目页面)的 ONE CNAME资源记录 . 我已经尝试了很多东西(在我的域名提供商处使用DNS记录和 Headers 重定向EUserv,但我只能在一个URL(http://blog.florianwolters.de)下访问我的GitHub用户页面 . 我知道DNS更改可能需要两天才能完成 .
有人可以向我解释,我如何才能实现上述目标?我无法相信这是不可能的,但我也不是DNS专家等 .
如果无法满足以上条件:您建议的解决方法是什么?我想要访问一个域(以及该域的子域)下的所有GitHub页面 .
3 回答
您只能为Git存储库根目录中的CNAME文件中定义的页面(用户页面和项目页面)创建一个CNAME资源记录 .
您可以通过在指向florianwolters.github.com的DNS设置中为主机(pear)创建CNAME记录,并在存储库中的cNAME文件中为pear.florianwolters.de创建条目来规避此问题 .
您可以将 one CNAME资源记录或 one 资源记录与GitHub Pages一起使用 .
因此,最后必须决定:
使用
example.org
和www.example.org
(用204.232.175.78
替换现有A记录)......或子域名,例如
blog.example.org
(使用<username>.github.com
创建新的CNAME记录) .现在,您必须选择从一个(子)域到另一个域的映射方式:
如果使用第一个,您可以使用从所需子域到
example.org
的HTTP标头来重定向 .如果使用后者,则必须使用
example.org
和www.example.org
中的 Headers 重定向到所需的子域 .另外,请参阅GitHub Pages Help获取帮助,将我的GitHub Pages repository视为示例
CNAME
文件 .Edit: GitHub Pages添加了一个详细页面,其中介绍了如何设置自定义域here .
你能行的 . 请注意,所有DNS CNAME条目都指向同一主机 .
1:github.com/florianwolters/florianwolters.github.com
CNAME文件内容:
blog.florianwolters.de
DNS CNAME:博客> florianwolters.github.com
2:github.com/florianwolters/pear/tree/gh-pages
CNAME文件内容:
pear.florianwolters.de
DNS CNAME:pear> florianwolters.github.com