Variables del conjunto de reglas de Azure Front Door

Las variables de servidor del conjunto de reglas proporcionan acceso a la información estructurada sobre la solicitud cuando trabaja con Conjunto de reglas.

Cuando se usan las condiciones de coincidencia del conjunto de reglas, las variables de servidor están disponibles como condiciones de coincidencia para que pueda identificar las solicitudes con propiedades específicas.

Cuando se usan acciones de conjunto de reglas, puede usar variables de servidor para cambiar dinámicamente los encabezados de solicitud y respuesta, o la reescritura de URL, las rutas de acceso y las cadenas de consulta, por ejemplo, al cargar una nueva página o cuando se publica un formulario.

Nota:

Las variables de servidor están disponible con los niveles de Azure Front Door estándar y premium.

Variables admitidas

Nombre de la variable Descripción
socket_ip La dirección IP de la conexión directa con el perímetro de Azure Front Door. Si el cliente usaba un proxy HTTP o un equilibrador de carga para enviar la solicitud, el valor de socket_ip es la dirección IP del proxy o del equilibrador de carga.
Para acceder a esta variable de servidor en una condición de coincidencia, use Dirección de socket.
client_ip Dirección IP del cliente que realizó la solicitud original. Si hubiera un encabezado X-Forwarded-For en la solicitud, la dirección IP del cliente se seleccionaría del mismo encabezado.
Para tener acceso a esta variable de servidor en una condición de coincidencia, use Dirección remota y configure el operador en Coincidencia de IPSin coincidencia de IP.
client_port Puerto IP del cliente que realizó la solicitud.
Para acceder a esta variable de servidor en una condición de coincidencia, use Puerto de cliente.
hostname Nombre de host de la solicitud del cliente.
Para acceder a esta variable de servidor en una condición de coincidencia, use Nombre de host.
geo_country Indica el país o región de origen del solicitante mediante su código de país o región.
Para tener acceso a esta variable de servidor en una condición de coincidencia, use Dirección remota y configure el operador en Coincidencia de geoáreaSin coincidencia de geoárea.
http_method Método usado para realizar la solicitud de URL, como GET o POST.
Para acceder a esta variable de servidor en una condición de coincidencia, use Método de solicitud.
http_version Protocolo de solicitud. Normalmente HTTP/1.0, HTTP/1.1 o HTTP/2.0.
Para acceder a esta variable de servidor en una condición de coincidencia, use Versión de HTTP.
query_string La lista de pares de variable-valor que aparecen después de ? en la dirección URL solicitada.
Por ejemplo, en la solicitud http://contoso.com:8080/article.aspx?id=123&title=fabrikam, el valor query_string es id=123&title=fabrikam.
Para acceder a esta variable de servidor en una condición de coincidencia, use Cadena de consulta.
request_scheme Esquema de solicitud: http o https.
Para acceder a esta variable de servidor en una condición de coincidencia, use Protocolo de solicitud.
request_uri El URI original completo de la solicitud (con argumentos).
Por ejemplo, en la solicitud http://contoso.com:8080/article.aspx?id=123&title=fabrikam, el valor request_uri es http://contoso.com:8080/article.aspx?id=123&title=fabrikam.
Para acceder a esta variable de servidor en una condición de coincidencia, use Dirección URL de solicitud.
ssl_protocol El protocolo de una conexión TLS establecida.
Para acceder a esta variable de servidor en una condición de coincidencia, use Protocolo de SSL.
server_port El puerto del servidor que ha aceptado una solicitud.
Para acceder a esta variable de servidor en una condición de coincidencia, use Puerto de servidor.
url_path Identifica el recurso específico en el host al que el cliente web quiere acceder. Esta es la parte del URI de solicitud sin los argumentos o la barra diagonal inicial.
Por ejemplo, en la solicitud http://contoso.com:8080/article.aspx?id=123&title=fabrikam, el valor url_path es article.aspx.
Para acceder a esta variable de servidor en una condición de coincidencia, use Ruta de acceso de solicitud.

Formato de variables de servidor

Cuando trabaje con acciones de conjunto de reglas, especifique variables de servidor con los siguientes formatos:

  • {variable}: Incluye toda la variable de servidor. Por ejemplo, si la dirección IP del cliente es 111.222.333.444, el token {client_ip} se evaluaría como 111.222.333.444.
  • {variable:offset}: Incluye la variable de servidor después de un desplazamiento específico hasta el final de la variable. La base del desplazamiento es cero. Por ejemplo, si la dirección IP del cliente es 111.222.333.444, el token {client_ip:3} se evaluaría como .222.333.444.
  • {variable:offset:length}: Incluye la variable de servidor después de un desplazamiento específico hasta la longitud especificada. La base del desplazamiento es cero. Por ejemplo, cuando la variable var es 'AppId=01f592979c584d0f9d679db3e66a3e5e',
    • Desplazamientos dentro del intervalo, sin longitudes: {var:0} = AppId=01f592979c584d0f9d679db3e66a3e5e, {var:6} = 01f592979c584d0f9d679db3e66a3e5e, {var:-8} = e66a3e5e
    • Desplazamientos fuera del intervalo, sin longitudes: {var:-128} = AppId=01f592979c584d0f9d679db3e66a3e5e, {var:128} = null
    • Desplazamientos y longitudes dentro del intervalo: {var:0:5} = AppId, {var:7:7} = 1f59297, {var:7:-7} = 1f592979c584d0f9d679db3e
    • Longitudes de cero: {var:0:0} = null, {var:4:0} = null
    • Desplazamientos dentro del intervalo y longitudes fuera del intervalo: {var:0:100} = AppId=01f592979c584d0f9d679db3e66a3e5e, {var:5:100} = =01f592979c584d0f9d679db3e66a3e5e, {var:0:-48} = null, {var:4:-48} = null

Acciones de conjunto de reglas admitidas

Las variables de servidor se admiten en las siguientes acciones de conjunto de reglas:

Pasos siguientes