Поделиться через


Перезапись URL-адреса в Шлюзе приложений Azure — портал Azure

В этой статье описывается, как использовать портал Azure для настройки экземпляра SKU шлюза приложений Azure v2 для перезаписи URL-адреса.

Примечание.

Функция перезаписи URL-адресов доступна только для SKU Standard_v2 и Web Application Firewall_v2 в Шлюзе приложений. При настройке перезаписи URL-адресов в шлюзе с включенным Брандмауэром веб-приложений, оценка выполняется на основе заголовков переписанных запросов и URL-адреса. Для получения более подробной информации см. Перезапись URL-адреса или заголовка узла с Брандмауэром веб-приложений (WAF_v2 SKU).

Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.

Перед началом

Чтобы выполнить действия, описанные в этой статье, необходимо иметь экземпляр SKU версии v2 Шлюз приложений. Перезапись URL-адреса не поддерживается в SKU v1. Если у вас нет SKU версии 2, создайте экземпляр SKU шлюза приложений версии 2 перед началом.

Вход в Azure

Войдите на портал Azure с помощью своей учетной записи Azure.

Настройка перезаписи URL-адреса

В следующем примере каждый раз, когда URL-адрес запроса содержит /article, путь к URL-адресу и строка запроса URL-адреса перезаписываются. Например:

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

  1. Выберите Все ресурсы, а затем выберите свой шлюз приложений.

  2. В области служб выберите "Перезапись".

  3. Выберите набор параметров перезаписи.

    Снимок экрана: добавление набора перезаписи.

  4. Укажите имя набора перезаписи и свяжите его с правилом маршрутизации:

    1. В поле "Имя" введите имя набора перезаписи.

    2. В списке связанных правил маршрутизации выберите один или несколько правил. Этот шаг связывает конфигурацию перезаписи с исходным прослушивателем с помощью правила маршрутизации. Выберите только те правила маршрутизации, которые еще не связаны с другими наборами перезаписи. Правила, уже связанные с другими наборами перезаписи, неактивны.

    3. Выберите Далее.

    Снимок экрана, демонстрирующий привязку к правилу.

  5. Создайте правило перезаписи.

    1. Выберите Добавить правило перезаписи.

      Снимок экрана, показывающий добавление правила перезаписи.

    2. В поле Имя правила перезаписи введите имя правила перезаписи.

    3. В поле последовательности правил введите число.

  6. В этом примере мы перезаписываем путь URL-адреса и строку запроса URL только в том случае, если путь содержится /article. Чтобы выполнить этот шаг, добавьте условие для оценки того, содержит /articleли URL-путь:

    1. Нажмите кнопку "Добавить условие", а затем выберите поле, содержащее инструкции If , чтобы развернуть его.

    2. В поле "Тип переменной" для проверки списка выберите переменную сервера. В этом примере мы хотим проверить шаблон /article в пути URL-адреса.

    3. В списке переменных сервера выберите uri_path.

    4. В разделе С учетом регистра выберите Нет.

    5. В списке Оператор выберите вариант равно (=).

    6. Введите шаблон регулярного выражения. В этом примере мы используем шаблон .*article/(.*)/(.*)

      Скобки () используются для записи подстроки для последующего использования при создании выражения для перезаписи пути URL-адреса. Дополнительные сведения см. в разделе «Сопоставление и захват шаблонов».

    7. Нажмите ОК.

    Скриншот, показывающий состояние.

  7. Добавьте действие для перезаписи URL-адреса и его пути:

    1. В списке Тип перезаписи выберите URL-адрес.

    2. В списке Тип действия выберите Задать.

    3. В разделе "Компоненты" выберите путь URL-адреса и строку запроса URL-адреса.

    4. В поле Значение URL-пути введите новое значение пути. В этом примере мы используем /article.aspx.

    5. В поле Значение строки запроса URL введите новое значение строки URL-запроса. В этом примере мы используем id={var_uri_path_1}&title={var_uri_path_2}.

      Пути {var_uri_path_1} и {var_uri_path_2} используются для получения подстрок, захваченных при оценке условия в выражении .*article/(.*)/(.*)

    6. Нажмите ОК.

    Снимок экрана, показывающий действие.

  8. Нажмите кнопку «Создать», чтобы создать набор перезаписи.

  9. Убедитесь, что новый набор правил перезаписи отображается в списке наборов правил перезаписи.

    Снимок экрана, который показывает, как добавляется правило перезаписи.

Проверка перезаписи URL-адреса с помощью журналов доступа

Просмотрите следующие поля в журналах доступа, чтобы проверить, произошла ли перезапись URL-адреса в соответствии с вашими ожиданиями:

  • originalRequestUriWithArgs: это поле содержит исходный URL-адрес запроса.
  • requestUri: Это поле содержит URL-адрес после перезаписи в шлюзе приложений.

Дополнительные сведения обо всех полях в журналах доступа см. в журнале доступа.

Дополнительные сведения о настройке перезаписей для некоторых распространенных вариантов использования см. в разделе "Распространенные сценарии перезаписи".