最近我介绍了在github上托管免费gh-pages的奇迹。我能够在我的github帐户上创建一些gh-pages分支以便回购,并且可以轻松共享和分发“my_username.github.io/my_repo”和“my_username.github.io/my_other_repo”等链接。然后我了解到我可以通过创建一个名为“my_username.github.io”的仓库来创建一个漂亮的登陆页面。所有的链接都很完美。
当我想为my_username.github.io设置自定义域时,我开始遇到麻烦。我购买了“my_domain.com”并遵循了所有说明here。当我访问“my_domain.com”时,我看到“my_username.github.io”中的内容....很好!但是,当我访问“my_domain.com/my_repo”时,我得到了github 404页面,上面写着“这里没有github页面”。当我访问“my_username.github.io/my_repo”时,它会重定向到“my_domain.com/my_repo”并显示相同的404页面。在namecheap.com(我购买了“my_domain.com”),我有:
@ 204.232.175.78 A (address)
www my_username.github.io CNAME (alias)
然后在repo“my_username.github.io”的根目录中,我有一个名为CNAME的文件,其中只包含文本“my_domain.com”。
我似乎无法弄清楚出现了什么问题,因为这种设置似乎与其他人一样有效。一个可能的罪魁祸首是我的github用户名在CapitalizedCamelCase中。
无论如何,我想知道是否有其他人已经解决了类似问题并提出了一些建议。如果有帮助,这里有一个指向实际回购的链接:
https://github.com/ScottLNorvell/ScottLNorvell.github.io
谢谢!
答案 0 :(得分:11)
现在您已拥有自定义域,您的项目页面位于yourcustomdomain.com/project_page
。
为username.github.io
设置GH页面并使用自定义域时,您无法再从username.github.io/project_page
访问项目页面,但可以直接从yourcustomdomain.com/project_page
访问它们。虽然username.github.io => yourcustomdomain.com
有重定向,但username.github.io/project_page => yourcustomdomain.com/project_page
没有重定向,因此您应该将项目页面的所有链接/流量直接指向yourcustomdomain.com/project_page
。
有关GitHub页面的自定义域和自动重定向的更多信息:https://help.github.com/articles/setting-up-a-custom-domain-with-pages#automatic-redirects
此外,请注意,您不应同时使用DNS提供商提供的CNAME和A记录,只能使用A记录。您应该从DNS提供商设置中删除CNAME记录,因为这是通过您在页面回购根目录中的CNAME file在GitHubs服务器上处理的。
注意:我在GitHub工作。如果您还有问题,请告诉我。
答案 1 :(得分:2)
我没有看到你问题的真正原因。试试contacting GitHub support,看看他们是否可以提供帮助 - 他们真的很好,回答得非常快。
答案 2 :(得分:1)
对我来说,问题是我将CNAME
文件放在source
分支的source
文件夹之外,以致rake generate
不起作用
现在将CNAME
放入source
分支的source
文件夹中,然后rake generate
和rake deploy
将CNAME
放入根文件夹在master
分支