Github GH-Pagesからの永続的なリダイレクト
-
24-10-2019 - |
質問
ホームページを作成したいのですが、今のところ、GitHubのページ機能が私のニーズに応えると思います。ただし、後でより本格的なCMS/ブログエンジンに切り替えたいと思うかもしれません。
古いURIをすべて保存しながらホームページを他の場所に移動することにした場合に備えて、GitHubページから永続的なリダイレクト(HTTP 301)を提供することは可能ですか?
解決
私が推測できる最善のことは、Githubがまだこれを追加していないことです。見る 2010年4月からのTekkub応答 Re:機能要求リストに追加します。別のメッセージ 1月の別のユーザーから 回避策としてメタタグを提案します(おそらく良い解決策ではありません)。
他のヒント
ユーザーのセキュリティのために、GitHubページは.htaccessや.confなどの顧客サーバー構成ファイルをサポートしていません。ただし、Jekyll Redirect from Pluginを使用すると、訪問者を更新されたURLに自動的にリダイレクトできます。
詳細については、こちらをご覧ください。 https://help.github.com/articles/redirects-on-github-pages/
マスリダイレクトレイアウト手法
個々のページリダイレクトは、次のようにカバーされています。 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リダイレクトを使用 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
すべての非デフォルトレイアウトを、Symlinkに置き換えます
redirect
レイアウト。これは、この手法の唯一の醜い部分です。私は美しい非プラギンの解決策を見ません。