オリジンルール #1
| パラメータ | 値 |
|---|---|
Hostヘッダーを設定 | example.com |
| 宛先ポートを設定 | 8081 |
以下に、オリジンルールに関する最も一般的な質問への回答を示します。
この場合、オリジンルールのパラメータがページルールのパラメータを上書きします。
以下の例を考えてみましょう:
Hostヘッダーと、オリジンルールによって定義されたオリジンホスト名を持ちます。Hostヘッダーを持ちます。はい。移行プロセスに関する最新情報はページルール移行ガイドを参照してください。
2つ以上のオリジンルールがリクエストに一致する場合、それらのルールの設定がマージされます。2つの設定をマージする際、後のルールの設定が前のルールで定義された設定を上書きし、設定プロパティを更新または追加します。Cloudflareによって適用される最終的な設定は、このマージされたバージョンになります。
例えば、以下の2つのオリジンルールを設定し、両方のルールが一致した場合、Cloudflareは最初のルールで設定された宛先ポートを使用し、2番目のルールで設定されたDNSホスト名のオーバーライドとHostヘッダーの値を使用します。
オリジンルール #1
| パラメータ | 値 |
|---|---|
Hostヘッダーを設定 | example.com |
| 宛先ポートを設定 | 8081 |
オリジンルール #2
| パラメータ | 値 |
|---|---|
Hostヘッダーを設定 | example.net |
| DNSホスト名を設定 | example.net |
APIユーザー向けのJSON例
APIを使用する場合、オリジンルールのパラメータをaction_parametersオブジェクトで設定します。
{ "rules": [ { "expression": "http.request.uri.query contains \"/eu/\"", "description": "オリジンルール #1", "action": "route", "action_parameters": { "host_header": "example.com", "origin": { "port": 8081 } } }, { "expression": "http.request.uri.query contains \"/eu/\"", "description": "オリジンルール #2", "action": "route", "action_parameters": { "host_header": "example.net", "origin": { "host": "example.net" } } } ]}適用されるマージされた設定は以下の通りです:
| パラメータ | 値 |
|---|---|
Hostヘッダーを設定 | example.net |
| 宛先ポートを設定 | 8081 |
| DNSホスト名を設定 | example.net |
もしルール #2で宛先ポートも設定していた場合、その値はルール #1で定義された8081の宛先ポートを上書きします。