このトピックでは、リクエストロジック関数の構文、パラメーター、および戻り値について説明します。また、これらの関数の例も示します。
server_addr
この関数は、現在のリクエストを受信するサーバーの IP アドレスをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | server_addr() |
パラメーター | なし |
例 | |
戻り値 | サーバーの IP アドレスを文字列で返します。 |
server_port
この関数は、現在のリクエストを受信するサーバーポートをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | server_port() |
パラメーター | なし |
例 | |
戻り値 | 現在のリクエストを受信するサーバーポートを返します。データ型:数値。 |
client_addr
注意:クライアントアドレスは、インターネットサービスプロバイダー( ISP )の NAT ルールによって変更される場合や、 IP アドレスが Alibaba Cloud CDN のアドレスプールにない場合があるため、戻り値が正確でない可能性があります。ご注意ください。
この関数は、クライアントの IP アドレスをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | client_addr() |
パラメーター | なし |
例 | |
戻り値 | 指定されたクライアントの IP アドレスを文字列で返します。 |
client_port
この関数は、クライアントのポートをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | client_port() |
パラメーター | なし |
例 | |
戻り値 | 指定されたクライアントのポートを返します。データ型:数値。 |
client_country
注意:クライアントアドレスは、インターネットサービスプロバイダー( ISP )の NAT ルールによって変更される場合や、 IP アドレスが Alibaba Cloud CDN のアドレスプールにない場合があるため、戻り値が正確でない可能性があります。ご注意ください。
この関数は、クライアントの国コードと行政区画コードをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | client_country() |
パラメーター | なし |
例 | |
戻り値 | 指定されたクライアントの国コードと行政区画コードを文字列で返します。国コードと行政区画コードの詳細については、「国コード」をご参照ください。 |
client_region
注意:クライアントアドレスは、インターネットサービスプロバイダー( ISP )の NAT ルールによって変更される場合や、 IP アドレスが Alibaba Cloud CDN のアドレスプールにない場合があるため、戻り値が正確でない可能性があります。ご注意ください。
この関数は、クライアントの行政区画コードをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | client_region() |
パラメーター | なし |
例 | |
戻り値 | 指定されたクライアントの行政区画コードを文字列で返します。行政区画コードの詳細については、「行政区画コード」をご参照ください。 |
client_isp
注意:クライアントアドレスは、インターネットサービスプロバイダー( ISP )の NAT ルールによって変更される場合や、 IP アドレスが Alibaba Cloud CDN のアドレスプールにない場合があるため、戻り値が正確でない可能性があります。ご注意ください。
この関数は、クライアントの ISP コードをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | client_isp() |
パラメーター | なし |
例 | |
戻り値 | 指定されたクライアントの ISP コードを文字列で返します。 ISP コードの詳細については、「ISP コード」をご参照ください。 |
ip_region
注意:クライアントアドレスは、インターネットサービスプロバイダー( ISP )の NAT ルールによって変更される場合や、 IP アドレスが Alibaba Cloud CDN のアドレスプールにない場合があるため、戻り値が正確でない可能性があります。ご注意ください。
この関数は、指定された IP アドレスが属する市または県の行政区画コードをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | ip_region(ipaddr) |
パラメーター | ipaddr:ドット付き 10 進表記で IP アドレスを指定します。 |
例 | |
戻り値 | 指定された IP アドレスが属する市または県の行政区画コードを文字列で返します。行政区画コードの詳細については、「行政区画コード」をご参照ください。 |
ip_isp
注意:クライアントアドレスは、インターネットサービスプロバイダー( ISP )の NAT ルールによって変更される場合や、 IP アドレスが Alibaba Cloud CDN のアドレスプールにない場合があるため、戻り値が正確でない可能性があります。ご注意ください。
この関数は、指定された IP アドレスの ISP コードをクエリします。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | ip_isp(ipaddr) |
パラメーター | ipaddr: ドット付き 10 進表記で IP アドレスを指定します。 |
例 | |
戻り値 | 指定された IP アドレスの ISP コードを文字列で返します。ISP コードの詳細については、「ISP コード」をご参照ください。 |
req_uri
この関数の使用上の注意:
リクエストに pattern パラメーターが含まれていない場合、リクエストの URI がパラメーターを除いて返されます。
リクエストに pattern パラメーターが含まれている場合、リクエストの URI が一致条件と比較されます。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_uri([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次の種類の一致がサポートされています。
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_uri_basename
この関数の使用上の注意:
リクエストに pattern パラメーターが含まれていない場合は、リクエスト URI 内のファイル名を返します。
リクエストに pattern パラメーターが含まれている場合は、リクエスト URI 内のファイル名と一致条件を比較します。
ファイル名の例:
例 1: /document_detail/30360.html の場合、ファイル名は 30360 です。
例 2: /M604/guopei_mp4/ZYJY2017BJGL0101/2-1_g.mp4 の場合、ファイル名は 2-1_g です。
例 3: /tarball/foo.tar.bz2 の場合、ファイル名は foo です。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_uri_basename([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次のマッチタイプがサポートされています。
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_uri_ext
この関数の使用上の注意:
リクエストに pattern パラメーターが含まれていない場合は、リクエスト URI の拡張子を返します。
リクエストに pattern パラメーターが含まれている場合は、リクエスト URI の拡張子を一致条件と比較します。
拡張子の例:
例 1: /document_detail/30360.html の場合、拡張子は .html です。
例 2: /M604/guopei_mp4/ZYJY2017BJGL0101/2-1_g.mp4 の場合、拡張子は .mp4 です。
例 3: /tarball/foo.tar.bz2 の場合、拡張子は .tar.bz2 です。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_uri_ext([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次のマッチタイプがサポートされています:
|
例 | |
戻り値 |
この例では、次の値が返されます: |
req_uri_seg
この関数の使用上の注意:
レスポンス パラメーターでは、セグメントはスラッシュ (/) で区切られます。
リクエストに idx パラメーターが含まれていない場合は、すべてのセグメントを返します。
リクエストに idx パラメーターが含まれている場合は、指定されたインデックスの後にあるセグメント (インデックスを含む) を返します。
パラグラフのインデックス: インデックスは 1 から始まり、パラグラフが追加されると左端のインデックスから増加します。
パラグラフの制限: パラグラフには最大 128 文字を含めることができます。この制限を超える文字は削除されます。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_uri_seg([idx]) |
パラメーター | idx: 開始インデックスを指定します。このパラメーターは省略可能です。 |
例 | |
戻り値 | データ型: 辞書。関連するパラグラフが含まれます。 説明 関数が指定されたインデックスに基づいて返された辞書からパラグラフを取得する場合、関数はパラグラフが空かどうかを確認します。 この例では、次の値が返されます。 |
req_uri_arg
この関数は、指定されたパラメーターの値をクエリします。リクエストに pattern パラメーターが含まれている場合、指定されたパラメーターの値が一致条件と比較されます。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_uri_arg(name, [pattern]) |
パラメーター |
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_uri_query_string
この関数の使用上の注意:
リクエストに pattern パラメーターが含まれていない場合、リクエスト内のパラメーターが疑問符 (?) を除いて返されます。
リクエストに pattern パラメーターが含まれている場合、リクエスト内のパラメーターは一致条件と比較されます。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_uri_query_string([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次の照合タイプがサポートされています。
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_scheme
この関数の使用上の注意:
pattern パラメーターがリクエストに含まれていない場合は、リクエストスキームを返します。
pattern パラメーターがリクエストに含まれている場合は、リクエストスキームと一致条件を比較します。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_scheme([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次のマッチタイプがサポートされています。
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_method
この関数の使用上の注意:
pattern パラメーターがリクエストに含まれていない場合は、リクエストメソッドを返します。
pattern パラメーターがリクエストに含まれている場合は、リクエストメソッドと一致条件を比較します。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_method([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次のマッチタイプがサポートされています。
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_host
この関数の使用上の注意:
リクエストに pattern パラメーターが含まれていない場合は、Host リクエストヘッダーの値を返します。
リクエストに pattern パラメーターが含まれている場合は、Host リクエストヘッダーの値と一致条件を比較します。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_host([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次の照合タイプがサポートされています。
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_user_agent
この関数の使用上の注意:
リクエストに pattern パラメーターが含まれていない場合は、User-Agent リクエストヘッダーの値を返します。
リクエストに pattern パラメーターが含まれている場合は、User-Agent リクエストヘッダーの値を一致条件と比較します。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_user_agent([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次の照合タイプがサポートされています。
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_referer
この関数の使用上の注意:
pattern パラメーターがリクエストに含まれていない場合は、Referer リクエストヘッダーの値を返します。
pattern パラメーターがリクエストに含まれている場合は、Referer リクエストヘッダーの値を一致条件と比較します。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_referer([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次のマッチタイプがサポートされています:
|
例 | |
戻り値 |
この例では、次の値が返されます: |
req_cookie
この関数は、指定された Cookie の値を照会します。リクエストに pattern パラメーターが含まれている場合、指定された Cookie の値が一致条件と比較されます。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_cookie(name, [pattern]) |
パラメーター |
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_first_x_forwarded
この関数の使用上の注意:
pattern パラメーターがリクエストに含まれていない場合、X-Forwarded-For リクエストヘッダーの最初のアドレスを返します。
pattern パラメーターがリクエストに含まれている場合、X-Forwarded-For リクエストヘッダーの最初のアドレスと一致条件を比較します。
次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_first_x_forwarded_addr([pattern]) |
パラメーター | pattern: 一致条件と比較されます。次のマッチタイプがサポートされています。
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_header
この関数は、指定されたリクエストヘッダーの値を照会します。 pattern パラメーターがリクエストに含まれている場合、指定されたリクエストヘッダーの値が一致条件と比較されます。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_header(name, [pattern]) |
パラメーター |
|
例 | |
戻り値 |
この例では、次の値が返されます。 |
req_id
この関数は、リクエストの Eagle Eye ID を照会します。各 Eagle Eye ID は、リクエストを一意に識別します。次の表に、この関数の詳細を示します。
項目 | 説明 |
構文 | req_id() |
パラメーター | なし |
例 | |
戻り値 | リクエスト ID を文字列で返します。この例では、リクエストの ID は |