Cloudflare Pagesでサイト公開(3)リダイレクト設定

Cloudflare Pagesでドメイン設定が完了したら、wwwあり・なしを統一するためのリダイレクトと、デプロイで生成されるURLのリダイレクトを行う。

URLのリダイレクト設定は、public配下の_redirectsファイルではなく、管理画面から行う。

wwwありとなしを統一する

Netlifyではwwwドメイン推奨だったため、wwwあり・なしの設定をする必要がなかったが、Cloudflare Pagesではデフォルトだとwwwあり・なしドメインが混在している状態になっている。wwwありとなしが混在しているのはSEO上よくないので、どちらかに統一する必要がある。

当サイトではwwwありのドメインを使用しているので、wwwなしのドメインをリダイレクトする設定を行う。

メニューから Websiteをクリックし、サイトを選択する。

メニュー Rules > Page Rules に進む。

「Create Page Rule」をクリック。

各項目を入力・選択

  • URL(必須):リダイレクトしたいURL
    URL配下すべてをリダイレクトするので、example.com/*とURL最後にアスタリスクを付ける
  • 設定の選択(必須):Forwarding URL(URLの転送)を選択
  • ステータスコード(必須):301 永久的なリダイレクトを選択
  • 目的のURL(必須):リダイレクト先のURL
    www.example.com/$1と入力。
    $1は変数で、example.com/*のアスタリスクの値を受け取る

「Save and deploy」で完了

デプロイで生成されるURLをリダイレクトする

Cloudflare Pagesにデプロイするたびに、(リポジトリ名)-5cx.pages.devのサブドメインサイトが生成される。これらをボットにクロールされるとまずいので、すべてカスタムドメインの方にリダイレクトする必要がある。

HOMEメニューの「Bulk Redirect」に進み、「Create bulk redirect list」ボタンをクリックすると、リダイレクト設定を追加する画面に遷移する。

手動での追加は、下の「Or, manually add URL redirects」から行う。クリックすると項目が開くので、必要な項目を入力する。

  • 元のURL:(リポジトリ名)-5cx.pages.devを入力
  • 対象のURL:公開しているドメインを入力
  • ステータス:301(永久リダイレクト)

「Edit parameters」を開くと、パラメーターの編集ができる。今回は以下の2項目にチェックを入れた。

  • Subpath matching:URL以下のパスに一致させる。old-domain.com/hoge/new-domain.com/hoge/にリダイレクト。
  • include subdomain:リダイレクト対象にサブドメインを含める。example.comを指定するとa.example.comb.example.comも含まれる。

「Continue to Redirect Rules」に進む。

ルールの名前を設定する。分かりやすければ名称は何でもよいと思う。

そして、下のリダイレクト設定のリストから対象のものを選ぶ(と言っても1個しかないが)。「Save and Deploy」ボタンを押す。

設定が保存される。

補足:_redirectsファイルによるリダイレクト

ディレクトリやページごとのリダイレクト設定は、publicフォルダ配下の_redirectsファイルで行う。

// 記述形式
[source] [destination] [code?]
  • source:元のディレクトリ・ページ(必須)
  • destination:遷移先ディレクトリ・ページ(必須)
  • code:リダイレクトのコード(オプション。デフォルトは302)

参考ページ

Suzunatsu

このブログについて

コーディングやWeb関連技術の記事と、買い物など日々のメモから成り立っています。 →少しだけ詳しく

この記事がお役に立ちましたら、サポートをお願いします。

広告