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

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

Примечание.

Возможность переопределения URL-адресов доступна для Шлюза приложений только в ценовых категориях Standard_v2 и WAF_v2. Если для шлюза с включенной поддержкой WAF настроено переопределение URL-адресов, вычисление WAF будет выполняться для измененных версий заголовков и URL-адреса запроса. Подробнее.

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

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

Для выполнения действий, описанных в этой статье, вам потребуется экземпляр Шлюза приложений версии 2. В версии 1 переопределение заголовков не поддерживается. Если у вас нет SKU версии 2, создайте экземпляр SKU шлюза приложений версии 2 перед началом.

Вход в Azure

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

Настройка переопределения URL-адресов

В приведенном ниже примере каждый раз, когда URL-адрес запроса содержит подстроку /article, выполняется переопределение строк пути и запроса в этом URL-адресе.

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

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

  2. В левой панели выберите Перезаписи.

  3. Выберите Набор правил перезаписи:

    Add rewrite set

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

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

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

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

    Associate to a rule

  5. Создайте правило переопределения:

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

    Screenshot that highlights Add rewrite rule.

    b. Введите имя для правила переопределения в поле Имя правила перезаписи. Введите число в поле Последовательность правил.

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

    a. Выберите Добавить условие, а затем выберите поле, содержащее инструкции Если, чтобы развернуть его.

    b. Так как в этом примере мы будет искать в пути URL-адреса шаблон /article, в списке Тип переменной для проверки выберите Переменная сервера.

    c. В списке Переменная сервера выберите переменную uri_path.

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

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

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

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

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

    Condition

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

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

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

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

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

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

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

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

    Action

  8. Щелкните Создать, чтобы создать набор переопределения.

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

    Add rewrite rule

Проверка переопределения URL-адресов по журналам доступа

Найдите представленные ниже поля в журналах доступа и убедитесь, что переопределение URL-адресов происходит в соответствии с вашими ожиданиями.

  • originalRequestUriWithArgs: это поле содержит исходный URL-адрес запроса.
  • requestUri: это поле содержит URL-адрес после операции переопределения, выполненной Шлюзом приложений.

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

Следующие шаги

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