9ura00

アプリのサイトを GitHub Pages から独自ドメイン+Cloudflare Pages に移した——規約・プライバシーポリシーの URL を変えるときの手順

ToVue2026年10月5日

ToVue のサイトを、GitHub Pages(9ura00.github.io/ToVue/)から、独自ドメインの 9ura00.com/tovue/ に移しました。サーバーは Cloudflare Pages です。

アプリのサイトには、ただの紹介ページだけでなく、アプリ内や App Store から参照される利用規約・プライバシーポリシー・サポートのページがあります。URL を変えるときは、リンクを切らさない順番で進める必要があったので、手順をまとめておきます。

なぜ移したのか

  • アプリごとにドメインを取るのはやめて、1つにまとめたかった。 今後のアプリも 9ura00.com/<アプリ名>/ に、紹介ページと規約をそろえて置けるようにしました。
  • お問い合わせのメールアドレスもドメインでそろえたかった。 Cloudflare のメール転送(Email Routing)を使うと、tovue@9ura00.com のようなアドレスを無料で作って、普段使っている Gmail に転送できます。
  • GitHub Pages は、規約上、商用サイトの無料ホスティングには向かないので、将来サイトに広告を置くことも考えて Cloudflare Pages にしました。

全体の流れ

順番 やること 目的
1 独自ドメインを取り、Cloudflare Pages に新しいサイトを公開 新しい URL を先に用意する
2 旧 URL の全ページを、新しい URL への転送ページに置き換える 古いアプリや検索結果のリンクを切らさない
3 規約・プライバシーポリシーの中身を新しい環境に合わせて直す 配信元・問い合わせ先の記載を正しくする
4 アプリを更新して、アプリ内のリンクと問い合わせ先を新しくする アプリから直接新しい URL を開く
5 App Store Connect のサポート・マーケティング・プライバシーポリシーの URL を変える ストアの掲載情報を新しくする

ポイントは、新しいページを先に公開し、旧ページは消さずに転送にすることです。アプリを更新しない人もいるので、古いアプリの中のリンクはずっと旧 URL を開き続けます。

1. 新しいサイトを公開する

ToVue のサイトは、もともと Jekyll(GitHub Pages が使っている、Markdown から HTML を作る仕組み)で作っていました。Cloudflare Pages に移すにあたって、手元で HTML まで作ってからアップロードする形にしました。

変える必要があったのは、Jekyll の設定の2行だけです。

url: https://9ura00.com
baseurl: /tovue

ページの中の URL(正規 URL、各言語版へのリンク、SNS で共有したときの画像の URL など)は、この設定から作られるので、11言語ぶんがまとめて新しい URL になりました。

2. 旧 URL を転送ページにする

GitHub Pages では、サーバー側の転送(301)は使えません。そこで、旧サイトの全ページを、同じパスの新しい URL へ移る小さな HTML に置き換えました。

<link rel="canonical" href="https://9ura00.com/tovue/ja/privacy/">
<meta http-equiv="refresh" content="0; url=https://9ura00.com/tovue/ja/privacy/">
<script>location.replace("https://9ura00.com/tovue/ja/privacy/" + location.hash);</script>

ここで1つ気をつけたことがあります。ToVue のアプリは、規約のページを JavaScript をオフにして読み込んでいます。JavaScript だけで転送すると、古いアプリの中では転送されずに止まってしまいます。そのため、JavaScript を使わない meta refresh を必ず入れています。

旧サイトのページ一覧は、新しいサイトの出力から自動で作るようにしたので、転送漏れのページはありません(44ページ)。

3. 規約とプライバシーポリシーを直す

サーバーを移すと、プライバシーポリシーの記載も変わります。ToVue のプライバシーポリシーには「このページは GitHub が配信しています」と書いていたので、11言語すべてで次のように直しました。

  • 公開ページの配信と、お問い合わせメールの転送:Cloudflare, Inc.
  • 旧アドレスの転送用ページの配信:GitHub, Inc.

問い合わせ先のメールアドレスも、新しいアドレスに変えて、最終更新日を更新しています。サイトの移転は見た目が変わらないので忘れがちですが、利用者の情報を処理する事業者が変わるので、きちんと書き換える必要があります。

つまずいたこと:メールアドレスが「[email protected]」になる

Cloudflare には、ページ内のメールアドレスを自動で難読化する機能(スクレイプシールドの「メールアドレスの難読化」)があり、最初はオンになっていました。

普通のブラウザでは、JavaScript で元のアドレスに戻して表示するので問題ありません。ところが、JavaScript をオフにしているアプリ内の規約画面では、問い合わせ先が [email protected] と表示されてしまいます。アプリでページを開く場合は、この機能をオフにしておく必要があります。

4〜5. アプリと App Store Connect

アプリの更新(ToVue 1.1.1)では、次のものを変えました。

  • アプリ内で開く規約・プライバシーポリシーの URL
  • 問い合わせ先のメールアドレス(あわせて、メニューに「お問い合わせ」ボタンを追加)
  • 規約ページの中のリンクを、外部ブラウザで開くかどうかを判定するドメイン

App Store Connect では、11言語ぶんのサポート URL・マーケティング URL・プライバシーポリシー URL を、新しいアプリの版を作るタイミングで変えました。これらは新しい版を出さないと変えられない項目なので、アプリの更新と一緒に行うのが効率的です。

まとめ

  • 新しいサイトを先に公開し、旧 URL は消さずに転送ページにする
  • アプリの中でページを開くなら、JavaScript を使わない転送を入れる
  • サーバーを移したら、プライバシーポリシーの「配信元」の記載も直す
  • Cloudflare のメールアドレスの難読化は、アプリ内で開くページでは問題になる
  • App Store Connect の URL は、アプリの更新と一緒に変える

ToVue は App Store で公開しています。

← ブログの一覧へ