簡體   English   中英

從 Github gh-pages 永久重定向

[英]Permanent redirect from Github gh-pages

我想創建一個主頁,目前,我認為 Github 的頁面功能將滿足我的需求。 但是,稍后我可能想切換到更成熟的 CMS/博客引擎。

是否可以從 Github 頁面提供永久重定向 (HTTP 301),以防我決定將主頁移到其他地方同時保留所有舊 URI?

我能推斷出的最好結果是 Github 還沒有添加這個。 請參閱2010 年 4 月的 Tekkub 回復:將其添加到功能請求列表中。 一位用戶在 1 月份的另一條消息建議使用 META 標簽作為解決方法(可能不是一個好的解決方案)。

大規模重定向布局技術

單個頁面重定向涵蓋在: https ://stackoverflow.com/a/36846720/895245 實際 301 似乎是不可能的。

如果要批量重定向:

http://you.github.io/some/path

到:

http://new_domain.com/some/path

做如下。

在你搬走之前

  • _layouts/default.html : 默認布局

  • _config使用默認布局:

     defaults: - scope: path: '' values: layout: 'default'

你搬走后

  • 創建_layouts/redirect.html並使用從 HTML 頁面的 Redirect派生的 HTML 重定向:

     {% assign redir_to = site.new_domain | append: page.url %} <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Redirecting...</title> <link rel="canonical" href="{{ redir_to }}"/> <meta http-equiv="refresh" content="0;url={{ redir_to }}" /> </head> <body> <h1>Redirecting...</h1> <a href="{{ redir_to }}">Click here if you are not redirected.<a> <script>location='{{ redir_to }}'</script> </body> </html>
  • _config包含:

     defaults: - scope: path: '' values: layout: 'redirect' new_domain: 'http://new-domain.com/some/path
  • 用指向redirect布局的符號鏈接替換每個非默認布局。 這是這項技術唯一丑陋的部分。 我沒有看到一個漂亮的非插件解決方案。

為了用戶的安全,GitHub Pages 不支持 .htaccess 或 .conf 等客戶服務器配置文件。 但是,使用 Jekyll Redirect From 插件,您可以自動將訪問者重定向到更新后的 URL。

更多信息可以在這里找到: https : //help.github.com/articles/redirects-on-github-pages/

是的。 很快,通過在 GitHub Pages settings 上設置自定義域設置CNAME 重定向。

當您希望通過自定義域提供 GitHub 頁面時,通常就是這種情況(假設用戶嘗試訪問https://kamarada.github.io/ ,然后瀏覽器重定向到https://linuxkamarada.com/ ,但頁面確實在 GitHub 上)。

但它也適用於您之前的網站由 GitHub Pages 提供服務並移動到另一台服務器的情況,例如 GitLab Pages(我想這也適用於例如 WordPress)。

看到這個答案:用戶嘗試訪問https://kamarada.github.io/ ,然后瀏覽器重定向到https://linuxkamarada.com/ ,但頁面實際上在 GitLab 上。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM