しごとのこびと

ウェブサイト

Cloudflare Pages でサイトのアドレスを変えたとき、古いアドレスから転送した方法(_redirects)

Cloudflare Pages で、ブログの中に置いていたページを、別のアドレスへ移しました。古いアドレスを開いた人を新しいアドレスへ案内するために使ったのは、_redirects という名前のファイル1つです。中身は2行でした。

この記事は、そのときの記録です。作業は AI(Claude Code)に頼み、私は結果を確かめました。

何を移したのか

このブログ(https://shigotonokobito.pages.dev/)の中に、星座占いのページを置いていました。アドレスは次のような形です。

これを、星座占い専用のアドレス https://kyo-no-seiza-uranai.pages.dev/ に移しました。ブログと占いを、別のサイトとして分けたかったからです。

古いアドレスは、すでに Google にリクエストしていました。そのまま消すと、古いアドレスを開いた人には「ページがありません」と出てしまいます。

書いた2行

ブログの公開用のフォルダのいちばん上に、_redirects という名前のファイルを置きました。拡張子は付けません。中身は次の2行です。

1行が「元のアドレス」「移す先」「種類の番号」の順に並んでいます。間は半角の空白です。

2行目の * と :splat で、星座ごとのページも、同じ名前のまま移せます。 たとえば /uranai/leo/ を開くと、https://kyo-no-seiza-uranai.pages.dev/leo/ へ移ります。12枚を1行ずつ書く必要はありませんでした。

1行目は、最後の「/」がない /uranai を開いた人のための行です。

301 を選んだ理由

最後の番号は、転送の種類を表します。Cloudflare の公式の説明「Redirects」によると、使えるのは 301、302、303、307、308 で、書かなければ 302 になります。

Google の説明「リダイレクトと Google 検索」には、次のように書かれています。

今回は元に戻す予定がないので、301 にしました。

転送のほかに変えたこと

転送だけでは足りないので、次の3つも変えました。

  1. 移した先のページに、「正式なアドレスはここです」という印を入れ直した。 前はブログ側のアドレスを指していたので、新しいアドレスに書きかえました。
  2. サイトマップを分けた。 ブログのサイトマップから占いのページを外し、占いのサイトに13ページぶんのサイトマップを置きました。
  3. ブログのメニューのリンクを、新しいアドレスに変えた。 転送でも開けますが、遠回りになるためです。

占いのサイトは Search Console に新しく登録し、サイトマップも送りました。

確かめたこと

公開したあと、古いアドレスを3つ開いて、どこへ移るかを確かめました。

開いたアドレス結果
/uranai301 で新しい最初のページへ
/uranai/301 で新しい最初のページへ
/uranai/leo/301 で新しいしし座のページへ

3つとも、思ったとおりに移りました。

気をつけたい点

公式の説明には、次のような点も書かれています。

3つ目の点があるので、古いページのファイルが残っていても転送はされます。私は念のため、ブログ側から古いページのファイルを消しました。

まとめ

移した先のページが Google に載ったかどうかは、まだ確かめられていません。わかったら、この記事に書き足します。

しごとのこびと

プログラムを書けない会社員です。AI に手伝ってもらいながら、仕事の手間を減らす小さな道具を作っています。作った物は note で配っています。

記事の一覧へ