URLベース詳細設定は、DuraSite-Edgeの動作をきめ細かく制御するための強力なルール設定機能(ルールエンジン)です。リクエストされたURI(パス、パラメータなど)、プロトコル(HTTP/HTTPS)、その他の条件(ヘッダ、Cookieなど、利用可能な場合)に基づいて特定のルールを適用し、キャッシュの挙動、HTTPヘッダーの操作、リクエストの転送先の変更、URLの書き換えなど、多岐にわたるアクションを実行させることができます。
機能概要 #
このルールエンジンを活用することで、お客様のWebサイトやアプリケーションの特定の要件に合わせた柔軟な設定が可能となり、パフォーマンスの最適化、セキュリティの向上、運用の効率化などを実現できます。
【設定可能なアクション】
- キャッシュ有効化 / 強制キャッシュ / キャッシュ無効化 / TTL設定
- リクエストヘッダーの追加 / 削除
- レスポンスヘッダーの追加 / 削除
- オリジン設定(接続先オリジンサーバーの変更)
- リダイレクト(指定URLへの転送)
- リライト(URLの内部的な書き換え)
- URLパラメータの無視(キャッシュキー等での無視)
- その他、弊社エンジニアによる特別な設定
設定方法 #
URLベースの詳細なルール設定は、お客様ご自身でDuraSite-Edgeの管理画面から行うことができます。
- ルールの作成: 管理画面のルール設定メニュー「URLベース詳細設定登録」で新しいルールを作成します。
- マッチ条件の設定: ルールを適用したいリクエストの条件を指定します。
- マッチ条件の設定: どのようなリクエストにこのルールを適用するか、条件を指定します。最低一つ以上の条件指定が必要です。
- URIパス: 必須の条件となることが多いです。
/
から始まるパスを入力し、マッチング方法(例:前方一致
,完全一致
,正規表現
など、利用可能な形式)を選択します。 - プロトコル: 適用するプロトコル(
HTTP
,HTTPS
,両方
)を選択します。
- アクションの設定: 上記の条件にマッチした場合に実行する動作(アクション)を選択し、必要なパラメータを設定します。
- 管理画面のドロップダウンリストなどから、「キャッシュ無効化」「レスポンスヘッダ追加」「オリジン設定」「リダイレクト」「TTL設定」といったアクションを選択します
- 選択したアクションに応じて、追加のパラメータ(例: ヘッダ名と値、リダイレクト先のURL、転送先オリジンサーバー名、TTLの秒数など)を入力・設定します。
- 一つのルール条件に対して、複数のアクションを定義し、それらを順に実行させることも可能な場合があります(例: ヘッダを追加してからオリジンを変更するなど)。
- ルールの順序と有効化: ルールの適用優先順位を調整し、設定を保存して有効化します。
【弊社エンジニアによる特別設定について】
標準の管理画面で設定できない、より複雑なロジックや特殊な設定が必要な場合は、担当営業にご相談ください。要件に応じて弊社エンジニアが個別に対応します。
主なユースケース #
このURLベース詳細設定(ルールエンジン)は非常に柔軟性が高く、様々な目的に活用できます。以下に代表的な例をアクションの種類別に挙げます。
- キャッシュ制御の最適化:
/admin/
ディレクトリ以下: 「キャッシュ無効化」ルールを設定し、管理画面は常にオリジンから取得するようにする。/assets/
ディレクトリ以下: オリジンヘッダに関わらず「キャッシュ有効化」し、さらに「TTL設定」で長期間(例:604800
秒=7日間)を指定する。
- セキュリティ関連ヘッダの付与:
- 全てのレスポンス、または
text/html
のレスポンスに対し、「レスポンスヘッダ追加」アクションでStrict-Transport-Security: max-age=31536000; includeSubDomains
やX-Content-Type-Options: nosniff
といったセキュリティヘッダを追加する。
- 全てのレスポンス、または
- 柔軟なオリジンルーティング:
- パスが
/api/v2/*
に前方一致する場合、「オリジン設定」アクションで新しいAPIサーバーを指定する。 - User-Agentヘッダに
Mobile
を含む場合、モバイル専用オリジンサーバーへ転送する(他のルールで独自ヘッダ付与が必要な場合あり)。
- パスが
- URLの正規化とサイト移行対応:
- パスが
/index.php
に完全一致する場合、「リダイレクト」アクションで/
へステータスコード301
で転送する。 - 旧ドメインから新ドメインへのリダイレクトを一括で設定する。
- パスが
- URLリライトによる内部連携:
- パスが
/users/*
にマッチする場合、「リライト」アクションで内部的に/profile.php?user=$1
のようにパスの一部を変数として利用して書き換える(正規表現利用)。
- パスが
- キャッシュキー最適化によるヒット率向上:
- 特定のパス(例:
/products/list
) に対し、「URLパラメータの無視」アクションで、キャッシュに影響しないパラメータ(例:utm_source
,gclid
,session_id
など)を指定し、それらが異なっていても同じキャッシュオブジェクトを利用できるようにする。
- 特定のパス(例: