Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

あるドメインから別のドメインへリダイレクトする

最終更新 Markdown で表示Agent セットアップ

エイリアスドメインがあり、そのドメインが別のドメインへトラフィックを転送するだけ(つまり、独自のオリジンサーバーを持たない)場合、Cloudflare 上で直接リダイレクトを設定できます。

  1. エイリアスドメイン(例: previous.com)を Cloudflare に追加します。

  2. エイリアスドメインに、DNS クエリを正しく解決するプロキシ済みの DNS A または CNAME レコード があることを確認します。www 用のサブドメイン DNS レコードも追加することをおすすめします。

    A レコードには IP アドレス 192.0.2.1 を使います。このアドレスはオリジンサーバーへトラフィックをルーティングしませんが、Cloudflare が受信トラフィックにルール、リダイレクト、Workers を適用できます。AAAA レコードに相当する IP アドレスは 100:: です。

    タイプ 名前 IPv4 アドレス プロキシ状態
    A @ 192.0.2.1 プロキシ済み
    A www 192.0.2.1 プロキシ済み
  3. Redirect rules を使い、エイリアスドメインから別のドメインへトラフィックを転送します。

この例では、smallshop.example.com へのすべてのリクエストを、HTTPS を使って別のホスト名へリダイレクトし、元のパスとクエリ文字列を保持します。

受信リクエストの一致条件

  • Field: Hostname
  • Operator: equals
  • Value: smallshop.example.com

Expression Editor を使う場合は、次の式を入力します。
(http.host eq "smallshop.example.com")

Then

  • Type: Dynamic
  • Expression: concat("https://globalstore.example.net", http.request.uri.path)
  • Status code: 301
  • Preserve query string: Enabled

たとえば、このリダイレクトルールは次のリダイレクトを行います。

リクエスト URL ターゲット URL ステータスコード
http://smallshop.example.com/ https://globalstore.example.net/ 301
http://smallshop.example.com/admin/?logged_out=true https://globalstore.example.net/admin/?logged_out=true 301
https://smallshop.example.com/?all_items=1 https://globalstore.example.net/?all_items=1 301
http://example.com/about/ (変更なし) 該当なし

役に立ちましたか?