【问题标题】:Can github pages CNAME file contain more than one domain?github pages CNAME 文件可以包含多个域吗?
【发布时间】:2013-05-03 11:24:17
【问题描述】:

github pages CNAME 文件可以包含多个域吗?

示例文件:

reggi.com
www.reggi.com
blog.reggi.com

【问题讨论】:

    标签: github github-pages


    【解决方案1】:

    不,这是不可能的。请参阅解释这一点的GitHub Help docs

    确保您的 CNAME 文件中仅列出一个域。如果您希望多个域指向相同的页面,则需要为其他域设置重定向。大多数域名注册商和 DNS 主机都向他们的客户提供这项服务。

    【讨论】:

      【解决方案2】:

      伊万·祖扎克所说的。如果你想将blog.reggi.com 重定向到reggi.com,你不能从 Jekyll 的 CNAME 文件中做到这一点。但是,如文档中所述,您的域名注册商应该能够为您执行此操作。

      例如,我使用name.com的域,我可以添加一个“URL Forwarding”条目:

      Domain blog.xxx.me
      URL xxx.me
      Type Redirect (301) 
      

      它应该会在短时间内生效(对我来说一两个小时)。

      【讨论】:

      • 如果我在 CNAME 文件“reggi.com”中有一个域怎么办。然后我将“www.reggi.com”和“blog.reggi.com”的DNS cname更改为“reggi.com”?这就是你们正在考虑的吗?我不认为我想要重定向,我可能还不确定。
      • @ThomasReggi:我的设置是:把reggi.com设为CNAME,然后添加两条A记录,一条是reggi.com指向204.232.175.78,另一条是www.reggi.com指向204.232.175.78。之后,我添加了一个 URL 转发规则:blog.reggi.com 重定向到 reggi.com。与here 相同的设置
      【解决方案3】:

      只需一条 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)

      希望这会有所帮助。有一段时间它超出了我的范围。

      【讨论】:

        【解决方案4】:

        CNAME 文件中只能有一个域名。此外,您可以在其他域上设置转发(可选地使用屏蔽)。

        没有屏蔽,就像重定向到您的原始网站一样,浏览器中的 url 将显示您的原始网站。

        通过掩码,它将提供您原始网站的内容,并且浏览器中的 url 将显示新的。

        我已经为我的博客设置了带有掩码的转发。您可以查看以下链接以了解其工作原理。

        原博客:http://hemanshubhojak.com

        转发博客:http://batcode.net

        【讨论】:

        • 第二个链接现已失效(2021 年 6 月 12 日)
        【解决方案5】:

        您只能使用一个 DNS 记录,sitename.com 或 www.sitename.com 指向 username.github.io。

        【讨论】:

        • 这基本上只是对现有答案的重复。 - From Review
        【解决方案6】:

        这是一种使用 HTML 重定向的仅 Github 解决方案。

        1. 创建一个额外的存储库
        2. 将其配置为使用带有附加域的 Github 页面
        3. 添加一个包含以下内容的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>
        

        【讨论】:

        • 我已经用 powershell 实现了每页。gist.github.com/CraigChamberlain/…
        • 这将如何与爬虫和其他东西一起使用?分享预览呢?
        • @iuliu.net 这是一个复杂的话题 - 它在文章中有很好的记录,一般的答案是html规范重定向大部分很好,因为目标页面是被跟踪的,可靠的。预览效果往往很好 - Here's an article - 基本上,它可以工作,并且大多数搜索引擎都可以很好地处理它,但它可能会产生一些负面影响
        【解决方案7】:

        如果您使用的是 cloudflare,您可以使用页面规则将您的 url 重定向到 github 页面。

        查看此页面:Configuring URL forwarding or redirects with Cloudflare Page Rules – Cloudflare Support

        【讨论】:

          【解决方案8】:

          不,但您可以使用 GitHub Action 使第二个 repo 与主存储库保持同步。第二个 repo 可能会将 GitHub Pages 设置为另一个域。

          Fork Sync 看起来是个不错的选择。

          【讨论】:

            猜你喜欢
            • 2013-09-03
            • 1970-01-01
            • 1970-01-01
            • 2013-04-03
            • 1970-01-01
            • 1970-01-01
            • 2021-03-22
            • 2017-06-17
            • 2020-02-05
            相关资源
            最近更新 更多