Compartir vía


Reescritura de una dirección URL con Azure Application Gateway: Azure Portal

En este artículo se describe cómo usar Azure Portal para configurar una SKU de Application Gateway v2 para reescribir la dirección URL.

Nota:

La característica de reescritura de URL solo está disponible para las SKU Standard_v2 y Web Application Firewall_v2 de Application Gateway. Cuando la reescritura de URL está configurada en una puerta de enlace habilitada para Web Application Firewall, la evaluación de Web Application Firewall tiene lugar en los encabezados de solicitud reescritos y la dirección URL. Para más información, consulte Uso de la reescritura de URL o la reescritura de encabezado host con Web Application Firewall (SKU de WAF_v2).

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

Antes de empezar

Debe tener una instancia de SKU de Application Gateway v2 para completar los pasos descritos en este artículo. La reescritura de URL no se admite en la SKU v1. Si no tiene la SKU de v2, cree una instancia de SKU de Application Gateway v2 antes de comenzar.

Inicio de sesión en Azure

Inicie sesión en Azure Portal con su cuenta de Azure.

Configuración de la reescritura de URL

En el ejemplo siguiente, siempre que la dirección URL de la solicitud contenga /article, se reescriben la ruta de acceso de la dirección URL y la cadena de consulta de la URL. Por ejemplo:

contoso.com/article/123/fabrikam ->contoso.com/article.aspx?id=123&title=fabrikam

  1. Seleccione Todos los recursos y seleccione su puerta de enlace de aplicación.

  2. En el panel de servicio, seleccione Reescrituras.

  3. Seleccione Conjunto de reescritura.

    Captura de pantalla que muestra cómo agregar un conjunto de reescritura

  4. Proporcione un nombre para el conjunto de reescritura y asócielo a una regla de enrutamiento:

    1. En el cuadro Nombre, escriba el nombre del conjunto de reescritura.

    2. En la lista Reglas de enrutamiento asociadas, seleccione una o varias reglas. Este paso asocia la configuración de reescritura al cliente de escucha de origen mediante la regla de enrutamiento. Seleccione solo esas reglas de enrutamiento que aún no están asociadas a otros conjuntos de reescritura. Las reglas ya asociadas a otros conjuntos de reescritura están atenuadas.

    3. Seleccione Siguiente.

    Captura de pantalla que muestra la asociación a una regla

  5. Crear una regla de reescritura:

    1. Seleccione Agregar regla de reescritura.

      Captura de pantalla que muestra cómo agregar una regla de reescritura

    2. En el cuadro Nombre de regla de reescritura, escriba un nombre para la regla de reescritura.

    3. En el cuadro Secuencia de reglas, escriba un número.

  6. En este ejemplo, se reescribirá la ruta de acceso de la dirección URL y la cadena de consulta de la URL solo cuando la ruta de acceso contenga /article. Para hacer este paso, agregue una condición para evaluar si la ruta de acceso de la dirección URL contiene /article.

    1. Seleccione Agregar condición y, luego, elija el cuadro que contiene las instrucciones If para expandirlo.

    2. En la lista Tipo de variable para comprobar, seleccione Variable de servidor. En este ejemplo, queremos comprobar el patrón /article en la ruta de acceso de la dirección URL.

    3. En la lista Variable de servidor, seleccione uri_path.

    4. En Distingue mayúsculas de minúsculas, seleccione No.

    5. En la lista Operador, seleccione igual (=).

    6. Escriba un patrón de expresión regular. En este ejemplo, se usa el patrón .*article/(.*)/(.*).

      Los paréntesis ( ) se utilizan para capturar la subcadena para su uso posterior en la creación de la expresión para reescribir la ruta de acceso de la dirección URL. Para obtener más información, consulte Coincidencia de patrones y captura.

    7. Seleccione Aceptar.

    Captura de pantalla que muestra la condición de la regla

  7. Adición de una acción para reescribir la dirección URL y la ruta de acceso de la dirección URL:

    1. En la lista Tipo de reescritura, seleccione URL.

    2. En la lista Tipo de acción, seleccione Conjunto.

    3. En Componentes, seleccione Ruta de acceso de URL y cadena de consulta de URL.

    4. En Valor de ruta de acceso de URL, escriba el nuevo valor de la ruta de acceso. En este ejemplo, usamos /article.aspx.

    5. En Valor de cadena de consulta de URL, escriba el nuevo valor de la cadena de consulta de dirección URL. En este ejemplo, usamos id={var_uri_path_1}&title={var_uri_path_2}.

      Las rutas de acceso {var_uri_path_1} y {var_uri_path_2} se usan para recuperar las subcadenas capturadas durante la evaluación de la condición en esta expresión .*article/(.*)/(.*).

    6. Seleccione Aceptar.

    Captura de pantalla que muestra la acción

  8. Seleccione Crear para crear el conjunto de reescritura.

  9. Compruebe que el nuevo conjunto de reescritura aparece en la lista de conjuntos de reescritura.

    Captura de pantalla que muestra cómo agregar una regla de reescritura

Comprobación de la reescritura de URL mediante los registros de acceso

Observe los campos siguientes en los registros de acceso para comprobar si la reescritura de URL se produjo según lo esperado:

  • originalRequestUriWithArgs: este campo contiene la dirección URL de la solicitud original.
  • requestUri: este campo contiene la dirección URL posterior a la operación de reescritura en Application Gateway.

Para obtener más información sobre todos los campos de los registros de acceso, vea registro de Acceso.

Para más información sobre cómo configurar las reescrituras para algunos casos de uso comunes, consulte los escenarios de reescritura comunes.