😡
[Cloudflare] *.example.com を *.example.net にリダイレクトしたい
こんにちは,ゆいまるです.有益情報を Mogyuchi が 共有 してくれたので書きます.
何をしたいのか
例えば,ドメインを新しく購入する際 foo.example.com bar.example.com example.com があり, *.example.net に全てをリダイレクトしたいというケースを考えます.
このとき,動的リダイレクトを設定したいじゃないですか.

ドキュメントを漁っていると regex_replace という関数が見えますね?
しかし, regex_replace は free プランだと使えません!(なんとドキュメントに書いてません😡)
さあ,どうしましょう.
どうやるのか
concat("https://", substring(http.host, 0, -11), "example.net", http.request.uri.path)
はい.
何をしているのか
要は concat と substring でホスト名を加工しているわけです.
example.com は 11 文字なのでサブドメインなどを取得するには 11 文字分削ってあげれば良いわけです.
たとえば, foo.example.com を 11 文字削ると foo. になります.
じゃあ example.com はどうなのかというと,空文字列になります.
これに example.net をくっつけてあげれば foo.example.com は foo.example.net に, example.com は example.net になります.
Discussion