Waiting room バイパスルール: 特定のサブパスを Cloudflare Waiting room 適用範囲から除外できるようになりました
つい先週 Cloudflare Waiting room に新しい機能がリリースされました。
今までは指定したパスの全下層パスに待合室が適用されていましたが、このルールにより待合室の機能を除外したいサイトを指定することができるようになりました。
今回はURLパスを指定しましたが、クエリ文字列などで除外することも可能になりました!
やりたいこと
階層内の特定ページ(複数指定も可能)にだけ Cloudflare Waiting room 機能を適用したくない
Waiting room を設置したサイトの下階層内にお知らせページなど、ユーザの順番待ちが必要ないサイトがあるとします。
ユーザ「閲覧したいだけなのに、混み合っていて5分も待つのか。。」
サービス提供側「閲覧用サイトに流れてくるトラフィックが、本当に必要なサイトへの順番待ち列に混ざり込んで、待機時間が増えている」
このような課題を解消できるかもしれません。
※注:トラフィックはオリジンサーバーに直接向かうため、閲覧サイトであっても大量のトラフィックが発生する場合はサーバーにかかる負荷に注意が必要です※
デフォルト Waiting room パス指定の特徴
- パスにトップページ `/` を設定するとサブパス(第二階層、第三階層…)全てにWaiting roomが有効になる
- ワイルドカードやクエリパラメータはサポートされていない
- 1つの Waiting room に設定できる`ホスト/パス`の組み合わせは1つだけ
今回試したこと
第一階層 | 第二階層 | |
---|---|---|
トップページ | Waiting room | |
/ticket | Waiting room | |
/nowr | オリジンサーバ |
Waiting room はトップページ/
に設置してありますが、/nowr
を適用範囲から除外します。
バイパスルール設定
- トラフィック > Waiting room >
waitingRoomName
をクリックし展開 >Bypass Waiting Room Rules
の ManageRules
をクリック -
Create new Bypass rule > ルール条件を入力し >
Bypass Waiting Room
をクリックし保存
パスの他、Cookie、完全URl、URl、URlクエリー文字列、ユーザーエージェント、リクエストメソッド、送信元のIPアドレス、ホスト名、リファラ、欧州連合、国、大陸を条件として入力することができます。
サイトを確認
トップページ/
のレスポンスヘッダーと /ticket
のレスポンスヘッダーには、__cf_waitingroom というCookieが発行されています。
/nowr
のレスポンスヘッダーには Waiting roomのクッキーはありません。
ルール条件に合うサイトには Waiting room 機能が適用されませんでした。
最後に
Classmethodでは、Cloudflareの構築支援・契約のご相談を承っています。ご興味のある方はぜひお問い合わせください