Hiratake Web ロゴ

Cloudflareの一括リダイレクトでDiscordの招待リンクを独自ドメインにする

投稿した日
更新した日
書いたひと
icon
ひらたけ

Cloudflare には 「一括リダイレクト(Bulk Redirects)」という機能 があります。ブログを見る限り 2021 年末頃にリリースされた機能のようなのですが、ドキュメントの「Use cases」 にもあるように 「ドメインに対する全てのリクエストを別のドメインの特定のページにリダイレクトする」 ことができます。

これを利用して、用意した独自ドメインにアクセスがあったときに Discord の招待リンクにリダイレクトする設定を行い、 Discord の招待リンクの独自ドメイン化 をやってみました。

今回は chat.example.com というサブドメインにアクセスすると、Discord サーバの招待リンクにリダイレクトするように設定するとして説明します。また、利用するドメイン(この例では example.com)はすでに Cloudflare に登録済みであるものとします。

まず、Cloudflare のダッシュボードにログインし、 左のメニューから「一括リダイレクト」を選択 します。

一括リダイレクトの設定画面の画像

次に、「一括リダイレクトリスト」という見出しの下にある 「一括リダイレクトリストの作成」ボタンから一括リダイレクトリストを作成 します。「名前」と「説明」を入力するフォームで任意の名前などを入力し、次の画面に進みます。

リダイレクトをする URL を設定する画面に移動するので、chat.example.com から Discord の招待 URL へリダイレクトするように設定を行います。CSV ファイルをアップロードして設定を行うこともできるようなのですが、今回は設定する項目が 1 つだけなので、「手動で URL リダイレクトを追加します」から手動入力をします。

一括リダイレクトリスト作成画面の画像

「ソース URL」に今回設定したい chat.example.com、「ターゲット URL」には Discord の招待 URL を入力します。ステータスは任意のものを選択します。後から変更もできるので、まず動作確認を…ということであればとりあえず「302」にしておけば良いと思います。

URL の追加が終わったら、ボタンを押して次に進みます。一括リダイレクトリストの作成の次は 一括リダイレクトルールの追加 を行います。任意のルール名を入力し、先ほど作成した一括リダイレクトリストを選択します。

一括リダイレクトルールの追加画面の画像

「保存してデプロイする」ボタンを押すと 一括リダイレクトの設定は完了 です。

ただ、このままでは chat.example.com というサブドメインが存在しないためブラウザで開くことができません。設定するドメイン(今回は example.com)の DNS 設定の画面へ移動し、chat という サブドメインのレコードを追加 します。

タイプは「AAAA」、名前には今回設定するサブドメインの「chat」、IPv6 アドレスには「100::」を設定して追加します。

DNS設定画面の画像

ここまで設定をして、実際にブラウザでアクセスしてみて Discord の招待 URL へリダイレクトされることが確認できれば完了です🎉


サーバをいっぱいブーストすればカスタム招待リンクとして discord.gg/ の後ろの部分を自由に変更することができますが、よほど大きなコミュニティとかでない限り難しいですよね。Tailwind CSS など、同じように独自ドメインの URL からリダイレクトさせて対応しているところを見かけたので、それを参考にやってみました。

自分でウェブサーバを用意したり、リダイレクトさせるためだけのページを作ったりしなくても設定ができて助かりました。ありがたや。