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


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

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

Примечание.

Функция перезаписи URL-адресов доступна только для номера SKU Standard_v2 и Брандмауэр веб-приложений_v2 Шлюз приложений. При настройке перезаписи URL-адресов в шлюзе с поддержкой Брандмауэр веб-приложений Брандмауэр веб-приложений оценка выполняется по заголовкам запросов перезаписи и URL-адресу. Дополнительные сведения см. в разделе "Использование перезаписи URL-адреса" или перезаписи заголовка узла с помощью Брандмауэр веб-приложений (WAF_v2 SKU).

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

Подготовка к работе

Чтобы выполнить действия, описанные в этой статье, необходимо иметь экземпляр SKU версии 2 Шлюз приложений. Перезапись URL-адреса не поддерживается в номере SKU версии 1. Если у вас нет 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-адреса и пути 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-адрес после операции перезаписи в Шлюз приложений.

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

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