Netlify + Gatsbyサイトでリダイレクトする方法

Gatsubyで構築した静的サイトをNetlifyにデプロイし公開している時、そのサイトの特定のページをリダイレクトする方法について紹介します。

staticフォルダの直下に_redirectsファイルをつくろう

static/_redirectsを作成し、その中にリダイレクト用の記述を追記します。

例えば、Netlifyドメインから独自ドメインへと恒久的にリダイレクトするには、このように記述します。(1)元のディレクトリ(2)リダイレクト先、という順序です。

# Redirect default Netlify subdomain to primary domain
https://loving-shannon-25a41d.netlify.app* https://blog.rokuzeudon.com/:splat 301!

リダイレクトの構文は、Netlify用のルールが公式ページで案内されているので、そちらを参考にします。特定のページだけリダイレクトさせる場合には、例えばこのように記述すればOKです。

# Redirect hatenablog to netlify
/about /pages/about 301!
/archive / 301!

# Redirect blog.rokuzeudon.com to rokujuudo.com
/entry/photoshop-mobile https://rokujuudo.com/howto/photoshop-mobile 301!
/entry/adobe-xd-case https://rokujuudo.com/howto/adobe-xd-case 301!

参考情報

https://docs.netlify.com/routing/redirects/redirect-options/
https://levelup.gitconnected.com/how-to-add-netlify-redirects-to-a-gatsby-site-ae678518cc91