【发布时间】:2013-05-03 11:24:17
【问题描述】:
github pages CNAME 文件可以包含多个域吗?
示例文件:
reggi.com
www.reggi.com
blog.reggi.com
【问题讨论】:
标签: github github-pages
github pages CNAME 文件可以包含多个域吗?
示例文件:
reggi.com
www.reggi.com
blog.reggi.com
【问题讨论】:
标签: github github-pages
不,这是不可能的。请参阅解释这一点的GitHub Help docs:
确保您的 CNAME 文件中仅列出一个域。如果您希望多个域指向相同的页面,则需要为其他域设置重定向。大多数域名注册商和 DNS 主机都向他们的客户提供这项服务。
【讨论】:
伊万·祖扎克所说的。如果你想将blog.reggi.com 重定向到reggi.com,你不能从 Jekyll 的 CNAME 文件中做到这一点。但是,如文档中所述,您的域名注册商应该能够为您执行此操作。
例如,我使用name.com的域,我可以添加一个“URL Forwarding”条目:
Domain blog.xxx.me
URL xxx.me
Type Redirect (301)
它应该会在短时间内生效(对我来说一两个小时)。
【讨论】:
reggi.com设为CNAME,然后添加两条A记录,一条是reggi.com指向204.232.175.78,另一条是www.reggi.com指向204.232.175.78。之后,我添加了一个 URL 转发规则:blog.reggi.com 重定向到 reggi.com。与here 相同的设置
只需一条 DNS 记录即可将 reggi.com 或 www.reggi.com 指向 username.github.io。
Github 自动指向 username.github.io
通过上述设置,您可以访问 username.github.io/blog:
blog.reggi.com(CNAME 文件包含 blog.reggi.com) 要么 reggi.com/blog 要么 www.reggi.com/blog
甚至
blog.reggi.com/blog(CNAME 文件包含 blog.reggi.com)
希望这会有所帮助。有一段时间它超出了我的范围。
【讨论】:
CNAME 文件中只能有一个域名。此外,您可以在其他域上设置转发(可选地使用屏蔽)。
没有屏蔽,就像重定向到您的原始网站一样,浏览器中的 url 将显示您的原始网站。
通过掩码,它将提供您原始网站的内容,并且浏览器中的 url 将显示新的。
我已经为我的博客设置了带有掩码的转发。您可以查看以下链接以了解其工作原理。
转发博客:http://batcode.net
【讨论】:
您只能使用一个 DNS 记录,sitename.com 或 www.sitename.com 指向 username.github.io。
【讨论】:
这是一种使用 HTML 重定向的仅 Github 解决方案。
index.html 文件<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Redirecting to https://example.com</title>
<meta http-equiv="refresh" content="0; URL=https://example.com">
</head>
<link rel="canonical" href="https://example.com">
</html>
【讨论】:
如果您使用的是 cloudflare,您可以使用页面规则将您的 url 重定向到 github 页面。
查看此页面:Configuring URL forwarding or redirects with Cloudflare Page Rules – Cloudflare Support
【讨论】:
不,但您可以使用 GitHub Action 使第二个 repo 与主存储库保持同步。第二个 repo 可能会将 GitHub Pages 设置为另一个域。
Fork Sync 看起来是个不错的选择。
【讨论】: