Условия иис: узнать условия и открыть индивидуальный инвестиционный счет — СберБанк — СберБанк

Условия иис: узнать условия и открыть индивидуальный инвестиционный счет — СберБанк — СберБанк

Содержание

что такое индивидуальный инвестиционный счет и зачем он нужен

Быстрое открытие счета. На заполнение заявки онлайн уйдет всего несколько минут. Наш представитель сам приедет с необходимыми документами — куда и когда вам удобно. Если у вас уже есть дебетовая карта Тинькофф, встреча не понадобится: документы можно подписать кодом из СМС, а счет откроется практически сразу после оформления заявки. Если на бирже выходной или вы оставили заявку после 19:00 по московскому времени, откроем счет в ближайший рабочий день. Заполнить заявку на ИИС
Простые тарифы. На тарифе «Инвестор» есть только комиссия за сделки — всё остальное бесплатно. На тарифе «Трейдер» небольшая ежемесячная плата, но минимальная комиссия на любые виды сделок. Больше никаких скрытых платежей и комиссий нет.

Низкий порог входа. Можно начать инвестировать даже с 10 ₽ — примерно столько стоит один пай фондов «Вечного портфеля» от управляющей компании Тинькофф Капитал. Большинство облигаций стоят около 1000 ₽.

Помощь в подборе активов. Подборки акций и облигаций можно найти в приложении в разделе «Что купить». Там наши аналитики собирают данные о самых привлекательных компаниях — например, тех, что занимаются облачными вычислениями, производством роботов или разработкой вакцины от COVID-19.

Также с подбором ваших первых ценных бумаг поможет наш робот-советник. Ответьте всего на три вопроса, и он сформирует готовый список активов, которые лучше всего подходят именно вам. Как работает робот-советник

А если вы точно знаете, что ищете, подберите акции в скринере — это специальный фильтр, помогающий отобрать бумаги по множеству параметров: по дивидендному доходу, капитализации, финансовому рынку или принадлежности к производственному сектору.

Широкий диапазон доступных ценных бумаг. С ИИС в Тинькофф на Московской бирже можно купить акции, облигации и еврооблигации российских компаний, а также 8 основных мировых валют и ряд биржевых фондов — ETF. На Санкт-Петербургской бирже можно купить еврооблигации российских компаний, а также акции многих американских, немецких и китайских компаний.

Круглосуточная поддержка. Если у вас останутся вопросы, вы можете задать их в чате приложения Тинькофф Инвестиций или в личном кабинете на сайте tinkoff.ru. Отвечаем круглосуточно, в любой день недели — без праздников и выходных.

условия, плюсы и минусы, как открыть, сравнения с другими брокерами

Индивидуальный инвестиционный счет может быть использован для покупки акций, ценных бумаг, валют и контрактов. Все эти инструменты созданы для того, чтобы зарабатывать на них и становиться чуточку богаче. Поэтому так важно, чтобы пользователь подобрал себе идеального брокера, от которого будет зависеть все: количество имеющихся инструментов, приложение, выплаты, комиссии. Один из вариантов — Росбанк ИИС. Стоит ли там его открывать и как это делается? Предстоит узнать прямо сейчас.

Преимущества и недостатки ИИС в Росбанке

Индивидуальный инвестиционный счет Росбанк имеет как свои преимущества, так и недостатки. Инвестор обязательно должен с ними ознакомиться перед тем, как принять решение об открытии ИИС именно тут.

Преимущества:

  • Удаленное открытие. Получить ИИС в этом банке может любой желающий инвестор. Все, что ему понадобится — заполнить анкету на официальном сайте и наслаждаться результатом. На это, при худших стечении обстоятельств, уйдет пара минут.
  • Есть свой инвестиционный помощник. Он называется Smart Invest и поможет инвестору собрать качественный портфель в зависимости от того, какие риски он готов нести и сумму вложений.
  • Приложение в стиле минимализма. Оно доступно как на iOS, так и Android устройствах. Будет использоваться для управления своими активами и заработка на них.
  • Есть отделения по всей России. Их инвестору придется посетить для того, чтобы урегулировать какие-либо конфликтные ситуации.
  • Профессиональная служба поддержки. Росбанк, в основном, связан с инвестированием. Поэтому служба поддержки всегда поможет инвестору решить его проблему и будет показывать особую отзывчивость.

Недостатки:

  • Нужно быть клиентом банка. Как минимум, нужно получить их банковскую карту. Это, в свою очередь, погружает инвестора в их экосистему.
  • Большие комиссии. Они есть как при использовании Smart Invest, так и за обслуживание ИИС. Поэтому Росбанк, в таком случае, не слишком выгоден инвесторам.

Если суммировать все вышесказанное, то напрашивается вывод: Росбанк имеет весьма выгодные условия для инвестирования. Поэтому настоятельно рекомендуется подумать над тем, чтобы открыть ИИС именно здесь.

Как открыть ИИС в Росбанке?

На это, к счастью, уйдет не более пары минут. Достаточно будет обратиться к официальному сайту финансового учреждения и получить первые дивиденды уже сегодня. И так, что же понадобится сделать:

  1. Сначала нужно открыть сайт Росбанка, воспользовавшись ссылкой https://rbsmarti.ru/?utm_source=rosbank.ru&utm_medium=savings#calc.
  2. Нажать «Начать инвестировать».
  3. Указать номер своего телефона и согласиться с условиями обслуживания.
  4. Подтвердить номер телефона и отправить брокеру ряд документов, которые ему нужны для открытия ИИС.
  5. Получить готовый ИИС и начать инвестировать.

Безусловно, нужно помнить о том, что ИИС может быть открыт исключительно в будние дни. По выходным дням биржи не работают, а значит, что зарегистрировать нового пользователя не получится.

Где открыть выгодное ИИС?

Несмотря на то, что Росбанк предлагает идеальные условия для заработка на инвестициях, есть и более интересные варианты. Речь идет, конечно же, о брокере БКС. Среди его условий стоит выделить:

  • Низкие комиссии за операции;
  • Удобное и качественное приложение для смартфонов;
  • Открывает ИИС за пару минут через интернет;
  • Может предложить свой аналитический сервис;
  • Есть огромное количество интересных предложений;
  • Отделения по всей стране.

БКС Брокер активно развивается еще с 1995 года, у него есть разрешение на ведение такой деятельности и сомневаться в его честности не приходится. Тысячи положительных отзывов говорят о себе сами! Еще он входит в первые строчки рейтинга надежных брокеров на ряду со Сбербанком, ВТБ и другими мастодонтами. Остается лишь получить понимание того, как стать его клиентом.

Как открыть ИИС в БКС Брокере?

Чтобы получить ИИС в БКС Брокере, необходимо потратить пару минут своего времени и сделать следующие действия:

  1. Воспользоваться ссылкой https://intellectis.ru/go/bks-broker и попасть на сайт брокера;
  2. Указать номер своего телефона, согласившись с условиями обслуживания;
  3. Выбрать тариф и отправить БКС некоторые документы, которые ему нужны для открытия ИИС.
  4. Получить ИИС и начать инвестировать.

После того, как действия будут выполнены, читатель становится полноценным клиентом этого брокера и может начать заниматься инвестициями. К счастью, больше ничего делать не придется. Все остальное на себя возьмет БКС.

ИИС: инструкция по применению


Что такое ИИС (Индивидуальный инвестиционный счет). Разберем 3 варианта использования ИИС, покажу как выжать из счета максимум!


Прибыльных Вам инвестиций!

Рассказать другим про интересную статью

Рекомендуем к прочтению

Темная сторона
    инвестирования

начните инвестировать под 30%
в надежные активы уже сегодня

Скачайте прямо сейчас

Скачать

Рекомендуемые к прочтению статьи:

Все статьи

Фундаментальный анализ акций [ видео ]

В этом видео мы расскажем про фундаментальный анализ акций. Разберем анализ компании на конкретном примере.

23 августа 2018

Оценка акций

В этом видео мы расскажем про оценку акций, Вы узнаете виды акций с точки зрения инвестирования, источники роста акций и способы их оценки.

15 августа 2018

Как сохранить деньги от инфляции

В этой статье мы разберем как обогнать инфляцию. Сравним депозиты, облигации и акции. А также узнаете специфические финансовые инструменты, созданные специально для опережения инфляции. 

31 июля 2018

Интегрированная информационная система для Центров обслуживания населения (ЦОН)

Интегрированная
информационная система для Центров обслуживания населения (далее – ИИС ЦОН,
система) –
это информационная система, предназначенная для автоматизации
процесса предоставления  государственных услуг населению через Центры
обслуживания населения (далее – ЦОН, Центр).

Основная идея создания ЦОН
обеспечение комфортных и качественных условий для оказания населению
государственных услуг по принципу «одного окна», что позволит стать
единой точкой доступа и управления информацией по предоставлению услуг и
организовать развитый мониторинг и контроль над выполнением регламентов.

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

Кроме того, в ИИС ЦОН
предусмотрена автоматизация процесса оказания государственных услуг в Центрах
обслуживания населения в части создания электронной заявки, формирования
электронного пакета документов и отправки электронной заявки в
информационные  системы государственных органов. Также система
интегрирована с внешними информационными системами госорганов и национальными
реестрами, на текущий момент данный механизм позволяет оптимизировать бизнес –
процессы оказания услуг, то есть значительно сократить пакет документов,
необходимых при подаче заявления на получение той или иной услуги.

Для повышения эффективности
работы Центров обслуживания населения в 2011 году проведено их слияние с
инфраструктурой электронного правительства, а
затем полная модернизация, в результате которой сократилось время обслуживания
клиентов, внедрена система оценки качества работы сотрудников, а также
реализована возможность
бронирования времени посещения центра через портал электронного
правительства.

Кроме того, при модернизации
ЦОН особое внимание  уделялось созданию необходимых условий для получения
государственных услуг людьми с ограниченными возможностями, для которых в
каждом ЦОН были выделены отдельные рабочие места для приема документов,
установлены пандусы и кнопки вызова.

В рамках исполнения задачи,
поставленной Главой государства по обеспечению доступности государственных
услуг широким слоям населения, в том числе, жителям отдаленных населенных
пунктов, во всех областях в пилотном режиме запущены 14 мобильных ЦОН, а в 2012
году была организована работа дополнительных 56 аналогичных ЦОН. Сегодня по
Казахстану действуют уже 70 Мобильных ЦОН.

Переход на новые форматы
работы Центров обслуживания населения позволил  повысить качество оказания
государственных услуг для населения, а также создать инструменты для их
мониторинга и оценки качества.

Сегодня
в республике функционируют 313
центров обслуживания населения, которые оказывают 332государственныеуслуги.

Помимо оптимизации оказания
государственных услуг, ИИС ЦОН позволяет вести мониторинг деятельности Центров.
В частности, теперь можно отследить скопление очередей в ЦОНах, работу
информационных систем, качество оказания услуг (время ожидания граждан в очереди,
время оформления документов). Система позволяет фиксировать случаи оказания
государственных услуг центральными и местными исполнительными органами с
нарушением срока. Эти результаты использует в своей работе Агентство РК по
делам государственной службы.

Дополнительно специалисты в
режиме реального времени могут следить за всем, что происходит в центрах и, в
случае необходимости, могут оперативно связаться с сотрудниками того или иного
ЦОНа, для обеспечения эффективной работы филиала.

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

В результате автоматизации
бизнес-процессов, интеграции всех баз данных и информационных систем
государственных органов, а также объединения в пределах одного комплекса всех
этапов, необходимых для получения водительского удостоверения и регистрации
автотранспорта, время оказания этих услуг сократилось в среднем до 2 часов, и
был исключен прямой контакт граждан с исполнителями, отвечающими за
изготовление документов.

Сегодня
в Казахстане функционируют 15
специализированных центров обслуживания населения и 3 сектора: в Астане, Алматы,
Караганде, Таразе, Актау, Кызылорде,
Павлодаре, Петропавловске, Талдыкоргане, Костанае, Актобе, Шымкенте, Уральске,
Кокшетау и Семее.

На текущий момент создание
ЦОН и СЦОН явилось позитивным сдвигом в сфере оказания государственных услуг и
стало своеобразной площадкой для электронного правительства, которое в одной
базе позволило интегрировать разные информационные системы.

Ссылка на конфигурацию модуля перезаписи URL-адресов

  • 21 минута на чтение

В этой статье

Руслан Якушев

В этой статье представлен обзор модуля перезаписи URL-адресов и поясняются концепции конфигурации, используемые этим модулем.

Обзор функций

Модуль перезаписи URL-адресов заменяет URL-адреса запросов на простые, удобные и удобные для поисковых систем адреса, которые отображаются для пользователей или в веб-приложениях.Переопределение URL-адресов использует определенные правила для оценки и последующего сопоставления URL-адреса запроса с адресом, определенным в правиле, прежде чем он будет обработан веб-сервером IIS. Вы можете определить логику перезаписи URL-адресов, которая включает регулярные выражения и подстановочные знаки, а правила могут применяться на основе URL-адреса запроса, заголовков HTTP и переменных сервера. Хотя основная цель модуля — переписать URL-адреса запросов на более удобные URL-адреса, вы также можете использовать модуль для определения правил, которые выполняют перенаправления, отправляют настраиваемые ответы или отменяют запросы.

Обзор правил перезаписи

Правило перезаписи определяет логику того, с чем сравнивать или сопоставлять URL-адрес запроса и что делать, если сравнение прошло успешно.

Правила перезаписи состоят из следующих частей:

  • Шаблон — Шаблон правила используется для указания либо регулярного выражения, либо шаблона подстановки, который используется для сопоставления строк URL.
  • Условия — Необязательный набор условий используется для указания дополнительных логических операций, которые необходимо выполнить, если строка URL-адреса соответствует шаблону правила.В рамках условий вы можете проверить определенные значения заголовков HTTP или переменных сервера или проверить, соответствует ли запрошенный URL-адрес файлу или каталогу в физической файловой системе.
  • Действие — Действие используется, чтобы указать, что делать, если строка URL-адреса соответствует шаблону правила и все условия правила соблюдены.

Объем правил перезаписи

Правила перезаписи могут быть определены в двух разных коллекциях:

  • — правила в этой коллекции могут быть определены только на уровне сервера.Глобальные правила используются для определения логики перезаписи URL на уровне сервера. Эти правила определены в файле ApplicationHost.config, и их нельзя переопределить или отключить на любых более низких уровнях конфигурации. Глобальные правила всегда работают с абсолютным URL-путем (то есть с запрошенным URI без имени сервера). Эти правила оцениваются на ранней стадии конвейера обработки запросов IIS (событие PreBeginRequest ).
  • <правила> — Правила в этой коллекции называются распределенными правилами, и их можно определить на любом уровне иерархии конфигурации.Распределенные правила используются для определения логики перезаписи URL-адресов, специфичной для конкретной области конфигурации. Этот тип правила может быть добавлен на любом уровне конфигурации с помощью файлов Web.config или тегов в файлах ApplicationHost.config или Web.config. Распределенные правила работают с URL-адресом относительно местоположения файла Web.config, в котором они определены. В случаях, когда распределенные правила определены внутри тега , они работают с URL-путем относительно пути, указанного для этого тега .Эти правила оцениваются в событии BeginRequest в конвейере IIS.

Оценка правил

На каждом уровне конфигурации в IIS может быть определено ноль или несколько правил перезаписи. Правила оцениваются в том же порядке, в котором они указаны. Модуль перезаписи URL обрабатывает набор правил, используя следующий алгоритм:

  1. Сначала URL сопоставляется с шаблоном правила. Если он не совпадает, модуль перезаписи URL немедленно прекращает обработку этого правила и переходит к следующему правилу.
  2. Если шаблон совпадает и для правила нет условий, модуль перезаписи URL-адреса выполняет действие, указанное для этого правила, а затем переходит к следующему правилу, где он использует замененный URL-адрес в качестве входных данных для этого правила.
  3. Если шаблон совпадает и для правила есть условия, модуль перезаписи URL оценивает эти условия. Если оценка прошла успешно, выполняется указанное действие правила, а затем перезаписанный URL-адрес используется в качестве входных данных для последующего правила
  4. .

В правиле может быть установлен флаг StopProcessing .Когда выполняется действие правила (т. Е. Соответствие правилу) и этот флаг включен, это означает, что никакие последующие правила не будут обрабатываться, и запрос будет передан конвейеру запросов IIS. По умолчанию этот флаг выключен.

Правила наследования

Если правила определены на нескольких уровнях конфигурации, модуль перезаписи URL оценивает правила в следующем порядке:

  1. Оцените все глобальные правила.
  2. Оцените набор правил, который включает распределенные правила из родительских уровней конфигурации, а также правила из текущего уровня конфигурации.Оценка выполняется в порядке от родителей к потомкам, что означает, что родительские правила оцениваются первыми, а правила, определенные на последнем дочернем уровне, оцениваются последними.

Сохранение исходного URL-адреса

Модуль перезаписи URL сохраняет исходный запрошенный путь URL в следующих переменных сервера:

  • HTTP_X_ORIGINAL_URL — эта серверная переменная содержит исходный URL в декодированном формате;
  • UNENCODED_URL — эта серверная переменная содержит исходный URL-адрес, точно такой, как он был запрошен веб-клиентом, с сохранением всей исходной кодировки.

Доступ к частям URL из правила перезаписи

Важно понимать, как можно получить доступ к определенным частям строки URL из правила перезаписи.

Для URL-адреса HTTP в этой форме: http (s): // <хост>: <порт> / <путь>? <Строка запроса>

  • <путь> сопоставляется с шаблоном правила.
  • доступен в переменной сервера QUERY_STRING, и к нему можно получить доступ с помощью условия в правиле.
  • доступен в переменной сервера HTTP_HOST и может быть доступен с помощью условия в правиле.
  • <порт> доступен в переменной сервера SERVER_PORT, и к нему можно получить доступ с помощью условия в правиле.
  • Переменные сервера SERVER_PORT_SECURE и HTTPS могут использоваться, чтобы определить, использовалось ли безопасное соединение. Доступ к этим серверным переменным можно получить с помощью условия в правиле.
  • Переменная сервера REQUEST_URI может использоваться для доступа ко всему запрошенному пути URL, включая строку запроса.

Например, если запрос был сделан для этого URL: http://www.mysite.com/content/default.aspx?tabid=2&subtabid=3 , а правило перезаписи было определено на уровне сайта, то:

  • Шаблон правила получает строку URL content / default.aspx в качестве входных данных.
  • Переменная сервера QUERY_STRING содержит tabid = 2 & subtabid = 3 .
  • Переменная сервера HTTP_HOST содержит www.mysite.com .
  • Переменная сервера SERVER_PORT содержит 80 .
  • Переменная сервера SERVER_PORT_SECURE содержит 0 , а HTTPS содержит OFF .
  • Переменная сервера REQUEST_URI содержит /content/default.aspx?tabid=2&subtabid=3 .
  • Переменная сервера PATH_INFO содержит /content/default.aspx .

Обратите внимание, что входная строка URL-адреса, передаваемая распределенному правилу, всегда относится к местоположению файла Web.config, в котором определено правило. Например, если запрос сделан на http: // www.mysite.com/content/default.aspx?tabid=2&subtabid=3 , а правило перезаписи определено в каталоге / content , тогда правило получает эту строку URL default.aspx в качестве входных данных.

Конфигурация правила перезаписи

Образец правил

Шаблон правила перезаписи используется для указания шаблона, с которым сравнивается текущий путь URL. Текущий в этом контексте означает значение пути URL-адреса при применении правила. Если существовали какие-либо правила, предшествующие текущему правилу, они могли соответствовать исходному запрошенному URL-адресу и изменять его.Строка URL-адреса, которая оценивается по шаблону, не включает строку запроса. Чтобы включить строку запроса в оценку правила, вы можете использовать серверную переменную QUERY_STRING в условии правила. Для получения дополнительной информации обратитесь к «Использование серверных переменных в правилах перезаписи».

Шаблон указан в элементе правила перезаписи.

Синтаксис шаблона правила

Синтаксис шаблона правила можно указать с помощью атрибута patternSyntax правила.([_0-9a-zA-Z -] + /)? (Wp -. *) «

Подстановочный знак — Синтаксис подстановочного знака, используемый в модуле перенаправления HTTP IIS. Ниже приведен пример шаблона в этом формате: «/ Scripts / * _ in. ???», где звездочка («*») означает «сопоставить любое количество любых символов и зафиксировать их в обратной ссылке» и « ? » означает соответствие ровно одному символу (обратная ссылка не создается).

Область действия атрибута patternSyntax — для каждого правила, что означает, что он применяется к шаблону текущего правила и ко всем шаблонам, используемым в условиях этого правила.

Свойства образца правила

Шаблон может быть инвертирован с помощью атрибута negate элемента . Когда используется этот атрибут, действие правила выполняется только в том случае, если текущий URL-адрес не соответствует указанному шаблону.

По умолчанию используется сопоставление с образцом без учета регистра. Чтобы включить чувствительность к регистру, вы можете использовать атрибут ignoreCase элемента правила.

Условия правил

Условия правила позволяют определить дополнительную логику для оценки правила, которая может быть основана на входных данных, отличных от текущей строки URL-адреса.Любое правило может иметь ноль или более условий. Условия правила оцениваются после успешного совпадения с шаблоном правила.

Условия определены в коллекции правила перезаписи. Эта коллекция имеет атрибут logicGrouping , который управляет оценкой условий. Если у правила есть условия, то действие правила выполняется только при совпадении с шаблоном правила и:

  • Все условия были оценены как истинные при условии, что использовалось logicGrouping = «MatchAll» .
  • По крайней мере одно из условий было оценено как истинное при условии, что использовалось logicalGrouping = «MatchAny» .

Условие определяется указанием следующих свойств:

Ввод условия указывает, какой элемент использовать в качестве входных данных для оценки условия. Ввод условия — это произвольная строка, которая может включать серверные переменные и обратные ссылки на предыдущие шаблоны условий и / или шаблоны правил.

Тип соответствия может быть одним из следующих трех:

  • IsFile — этот тип соответствия используется, чтобы определить, содержит ли входная строка физический путь к файлу в файловой системе.Если строка ввода условия не указана, модуль перезаписи URL использует физический путь запрошенного файла в качестве значения по умолчанию для ввода условия. Этот тип соответствия может использоваться только для распределенных правил.

  • IsDirectory — этот тип соответствия используется, чтобы определить, содержит ли входная строка физический путь к каталогу в файловой системе. Если строка ввода условия не указана, модуль перезаписи URL использует физический путь запрошенного файла в качестве значения по умолчанию для ввода условия.Этот тип соответствия может использоваться только для распределенных правил.

  • Шаблон — этот тип соответствия используется для выражения условия, при котором произвольная входная строка сопоставляется с шаблоном регулярного выражения. Шаблон условия можно указать с помощью синтаксиса регулярного выражения или синтаксиса подстановочных знаков. Тип шаблона для использования в условии зависит от значения флага patternSyntax , определенного для правила, которому принадлежит это условие.У этого типа условия есть два связанных атрибута, которые управляют сопоставлением с образцом:

    • шаблон — Используйте этот атрибут, чтобы указать фактический шаблон.
    • ignoreCase — Используйте этот атрибут, чтобы указать, должно ли сопоставление с образцом для условия быть чувствительным к регистру или нечувствительным к регистру.

Кроме того, результат оценки условия может быть отменен с помощью атрибута negate . Это можно использовать, чтобы указать условие, которое проверяет, является ли запрошенный URL-адрес НЕ файлом, как в следующем примере:

  
  

Действие правила

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

Действие перезаписи

Действие Rewrite заменяет текущую строку URL-адреса строкой подстановки. Строка подстановки всегда должна указывать путь URL-адреса (например, contoso / test / default.aspx). Обратите внимание, что замены, содержащие физический путь в файловой системе (например, C: \ inetpub \ wwwroot ), не поддерживаются в IIS.

Действие Rewrite имеет следующие параметры конфигурации:

  • url — это строка подстановки для использования при перезаписи текущего URL. URL-адрес замены — это строковое значение, которое может включать следующее:

    • Обратные ссылки на шаблоны условий и правил. (Для получения дополнительной информации см. Раздел о том, как использовать обратные ссылки.)
    • Переменные сервера. (Для получения дополнительной информации см. Раздел об использовании переменных сервера.)
  • appendQueryString — указывает, сохраняется ли строка запроса из текущего URL-адреса во время подстановки. По умолчанию, если значение флага appendQueryString не указано, предполагается, что он имеет значение ИСТИНА. Это означает, что строка запроса из исходного URL-адреса добавляется к замененному URL-адресу.

Действие перенаправления

Действие Redirect указывает модулю перезаписи URL-адреса отправить ответ перенаправления обратно клиенту.Код состояния перенаправления (3xx) можно указать в качестве параметра для этого действия. Поле Location ответа содержит строку подстановки, указанную в правиле.

URL подстановки для правила перенаправления можно указать в одной из следующих форм:

  • Относительный URL-путь — contoso / test / default.aspx
  • Абсолютный URI — https://example.com/contoso/test/default.aspx

Использование действия Redirect подразумевает, что никакие последующие правила не оцениваются для текущего URL-адреса после выполнения перенаправления.

Действие Redirect имеет следующие параметры конфигурации:

  • url — Использует строку подстановки в качестве URL-адреса перенаправления. URL-адрес замены — это строка, которая может включать следующее:

    • Обратные ссылки на шаблоны условий и правил. (Для получения дополнительной информации см. Раздел о том, как использовать обратные ссылки.)
    • Переменные сервера. (Для получения дополнительной информации см. Раздел об использовании переменных сервера.)
  • appendQueryString — указывает, должна ли строка запроса из текущего URL-адреса сохраняться во время подстановки.По умолчанию, если флаг AppendQueryString не указан, предполагается, что он имеет значение ИСТИНА. Это означает, что строка запроса из исходного URL-адреса добавляется к замененному URL-адресу.

  • redirectType — указывает код состояния для использования во время перенаправления:

    • 301 — постоянный
    • 302 — Найдено
    • 303 — Посмотреть другие
    • 307 — Временный
Действие CustomResponse

Действие CustomResponse заставляет модуль перезаписи URL-адреса отвечать HTTP-клиенту, используя указанный пользователем код состояния, подкод и причину.Использование действия CustomResponse подразумевает, что никакие последующие правила для текущего URL-адреса не оцениваются после выполнения этого действия.

Действие CustomResponse имеет следующие параметры конфигурации:

  • statusCode — указывает код состояния, который будет использоваться в ответ на запрос клиента.
  • subStatusCode — указывает код подстатуса для использования в ответ на запрос клиента.
  • statusReason — указывает фразу причины для использования с кодом состояния.
  • statusDescription — Задает описание одной строки, которое будет помещено в тело ответа.
Действие AbortRequest

Действие AbortRequest заставляет модуль перезаписи URL разрывать HTTP-соединение для текущего запроса. Действие не имеет параметров. Использование этого действия подразумевает, что никакие последующие правила для текущего URL-адреса не оцениваются после выполнения этого действия.

Нет действий

A None action используется, чтобы указать, что никакое действие не выполняется.

Использование переменных сервера в правилах перезаписи

Переменные сервера предоставляют дополнительную информацию о текущих HTTP-запросах. Вы можете использовать эту информацию, чтобы принимать решения о перезаписи или составлять перезаписанный URL. На переменные сервера можно ссылаться в следующих местах в правилах перезаписи:

  • В строке ввода условия

  • В строках подстановки правил, а именно:

    • url атрибут действия Rewrite and Redirect
    • statusLine и response Line действия CustomResponse

На переменные сервера можно ссылаться с помощью синтаксиса {VARIABLE_NAME}.Например, в следующем условии используется серверная переменная QUERY_STRING:

  
  

Переменные сервера также могут использоваться для доступа к заголовкам HTTP из текущего запроса. Любой HTTP-заголовок, предоставленный текущим запросом, представлен как серверная переменная, имя которой сгенерировано в соответствии с этим соглашением об именах:

  1. Все символы тире («-») в имени заголовка HTTP преобразуются в символы подчеркивания («_»).
  2. Все буквы в имени заголовка HTTP переводятся в заглавные.
  3. К имени заголовка добавляется префикс

  4. «HTTP_».

Например, чтобы получить доступ к HTTP-заголовку «user-agent» из правила перезаписи, вы можете использовать серверную переменную {HTTP_USER_AGENT}.

Использование обратных ссылок в правилах перезаписи

Части входных данных правил или условий могут быть захвачены в обратных ссылках. Затем их можно использовать для создания URL-адресов подстановки в действиях правил или для создания входных строк для условий правила.

Обратные ссылки генерируются по-разному, в зависимости от того, какой синтаксис шаблона используется для правила. Когда используется синтаксис шаблона ECMAScript, обратная ссылка может быть создана путем помещения скобок вокруг части шаблона, которая должна фиксировать обратную ссылку. Например, шаблон ([0-9] +) / ([a-z] +). Html захватит 07 и статью в обратных ссылках с этого запрошенного URL: 07 / article.html . Когда используется синтаксис шаблона «Подстановочный знак», всегда создаются обратные ссылки, когда в шаблоне используется символ звездочки (*).Никакие обратные ссылки не создаются, когда «?» используется в выкройке. Например, шаблон * / *. Html захватит contoso и test в обратных ссылках из этого запрошенного URL: contoso / test.html .

Использование обратных ссылок одинаково, независимо от того, какой синтаксис шаблона использовался для их захвата. Обратные ссылки могут использоваться в следующих местах в правилах перезаписи:

  • Входные строки состояния

  • В действиях правил, а именно:

    • url атрибут действия Rewrite and Redirect
    • statusLine и response Line действия CustomResponse
  • В параметре ключа для карты перезаписи

Обратные ссылки на шаблоны условий идентифицируются {C: N}, где N — от 0 до 9. (..] +) \. mysite \ .com $ «/>



Взаимодействие с кэшированием вывода IIS

Модуль перезаписи URL-адресов управляет поведением кэша вывода IIS в следующем порядке:

  1. Оптимально использовать режим ядра и кэширование вывода ответов пользовательского режима для перезаписанных URL-адресов, тем самым повышая производительность веб-приложения, использующего модуль перезаписи URL-адресов.
  2. Запретить кеширование ответов, когда логика кеширования может быть нарушена из-за перезаписи URL.

Модуль управляет кэшированием вывода, изменяя определенные свойства кэширования или полностью отключая кеширование. Модуль не может включить кэширование вывода, если оно было отключено конфигурацией IIS или любым другим модулем в конвейере IIS. Кэширование вывода управляется следующим образом:

  1. Модуль всегда устанавливает настройку кэша пользовательского режима variableByHeader = «HTTP_X_ORIGINAL_URL».Это гарантирует, что при включении кэширования в пользовательском режиме модуль учитывает исходный URL-адрес для создания ключа для записи кэша.

  2. Если в наборе правил перезаписи используются серверные переменные со значениями, которые либо постоянны на протяжении всего процесса, либо получены из запрошенного URL-адреса, набор правил считается безопасным для кэширования вывода. Это означает, что модуль перезаписи URL-адреса не будет изменять существующую политику кэширования каким-либо образом, кроме установки DifferentByHeader , как описано в шаге 1.

    Следующие серверные переменные при использовании в правилах перезаписи не влияют на политику кэширования вывода:

    • «CACHE_URL»
    • «КОРЕНЬ ДОКУМЕНТА»
    • «HTTP_URL»
    • «HTTP_HOST»
    • «ПУТЬ_ИНФО»
    • «ПУТЬ_ПЕРЕВОДА»
    • «QUERY_STRING»
    • «REQUEST_FILENAME»
    • «REQUEST_URI»
    • «SCRIPT_FILENAME»
    • «SCRIPT_NAME»
    • «SCRIPT_TRANSLATED»
    • «UNENCODED_URL»
    • «URL»
    • «URL_PATH_INFO»
    • «» APP_POOL_ID «
    • «APPL_MD_PATH»
    • «APPL_PHYSICAL_PATH»
    • «ШЛЮЗ_ИНТЕРФЕЙС»
    • «СЕРВЕР-ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ»
    • «SSI_EXEC_DISABLED»
  3. Если набор правил перезаписи использует любую серверную переменную, не упомянутую в приведенном выше списке, набор правил считается небезопасным для кэширования вывода.Это означает, что модуль перезаписи URL-адресов отключит кеширование в режиме ядра для всех запросов, независимо от того, были ли URL-адреса запросов перезаписаны или нет. Кроме того, модуль изменит политику кэширования для кеш-памяти пользовательского режима, установив свойство кэширования variableByValue таким образом, чтобы оно содержало объединенную строку всех значений переменных сервера, используемых в наборе правил.

Строковые функции

Для изменения значений в действии правила перезаписи, а также любых условий доступны три строковые функции:

  • ToLower — возвращает строку ввода, преобразованную в нижний регистр.
  • UrlEncode — возвращает входную строку, преобразованную в формат с кодировкой URL. Эту функцию можно использовать, если URL-адрес подстановки в правиле перезаписи содержит специальные символы (например, символы, отличные от ASCII или небезопасные для URI).
  • UrlDecode — декодирует входную строку в кодировке URL. Эта функция может использоваться для декодирования ввода условия перед сопоставлением его с шаблоном.

Функции можно вызывать, используя следующий синтаксис:

  {function_name: any_string}
  

Где «имя_функции» может быть одним из следующих: «ToLower», «UrlEncode», «UrlDecode».Any_string может быть литеральной строкой или строкой, построенной с использованием серверных переменных или обратных ссылок. Например, допустимы следующие вызовы строковых функций:

  {ToLower: DEFAULT.HTM}
{UrlDecode: {REQUEST_URI}}
{UrlEncode: {R: 1} .aspx? P = [резюме]}
  

Строковые функции могут использоваться в следующих местах в правилах перезаписи:

  • Входные строки состояния

  • В строках подстановки правил, а именно:

    • url атрибут Rewrite and Redirect actions
    • statusLine и responseLine атрибуты действия CustomResponse

Пример правила, использующего функцию ToLower :

  
 
 
 
 

  

Пример правила, использующего функцию UrlEncode :

  <правила>
   
   
   

  

Пример правила, использующего функцию UrlDecode :

  <правила>
   
      
      <условия>
         
      
      
   

  

Переписать карты

Карта перезаписи — это произвольный набор пар имя-значение, который можно использовать в правилах перезаписи для генерации URL-адреса замены во время перезаписи.Карты перезаписи особенно полезны, когда у вас есть большой набор правил перезаписи, и все эти правила используют статические строки (то есть, когда не используется сопоставление с образцом). В этих случаях вместо определения большого набора простых правил перезаписи вы можете поместить все сопоставления в карту перезаписи как ключи и значения между входным URL-адресом и URL-адресом замены. Затем, чтобы найти URL-адрес замены на основе входного URL-адреса, у вас будет одно правило перезаписи, которое ссылается на карту перезаписи.

Карта перезаписи определяет именованный набор строк пар имя-значение, как в следующем примере:

  
  <добавить ключ = "а.html "value =" b.html "/>
  
  

  

Карта перезаписи однозначно идентифицируется своим именем и может содержать ноль или более записей «ключ-значение». Кроме того, в карте перезаписи можно указать значение по умолчанию, которое будет использоваться, когда ключ не найден. Это контролируется с помощью атрибута defaultValue . По умолчанию в качестве значения по умолчанию используется пустая строка.

Может быть любое количество карт перезаписи на любом уровне конфигурации, кроме уровня файла.Карты перезаписи находятся в элементе коллекции .

Ссылки на карты перезаписи в правиле перезаписи используются с использованием следующего синтаксиса:

  {RewriteMapName: Key}
  

Где Key параметр может быть любой произвольной строкой и может включать обратные ссылки на шаблоны правил или условий. Например, следующие допустимые варианты использования карты перезаписи:

  {MyRewriteMap: contoso / {R: 1} / test / {C: 1}}
{MyRewriteMap: a.html}
{MyRewriteMap: {R: 1}? {C: 1} & contoso = test}
  

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

На карту перезаписи можно ссылаться в следующих местах в правилах перезаписи:

  • В строке ввода условия

  • В строках подстановки правил, а именно:

    • url атрибут Rewrite and Redirect actions
    • statusLine и response Line из CustomResponse действий

Пример 1 : С картой перезаписи, определенной следующим образом:

  
 
  
    <добавить ключ = "/ диагностика" значение = "/ по умолчанию.aspx? tabid = 2 & amp; subtabid = 29 "/>
    
    
  
 

  

И правило перезаписи, определенное следующим образом:

  
 
  
  <условия>
   
  
  
 

  

Запрошенный URL / диагностики будет переписан как / по умолчанию.aspx? tabid = 2 & subtabid = 29 .
Запрошенный URL / веб-трансляций будет изменен на /default.aspx?tabid=2&subtabid=24 .
Запрошенный URL / php будет заменен на /default.aspx?tabid=7116 .
Запрошенный URL / default.aspx не будет перезаписан, поскольку карта перезаписи не содержит элемента с ключом = «/ default.aspx»; поэтому карта перезаписи вернет пустую строку, которая не будет соответствовать шаблону условия, следовательно, действие правила не будет выполнено.

Пример 2 : С картой перезаписи, определенной следующим образом:

  
 
  
    
    
    
  
 

  

И правило перезаписи, определенное следующим образом:

  
 
  
  <условия>
   
  
  
 

  

Запрошенный URL-адрес /default.aspx?tabid=2&subtabid=29 будет перенаправлен на http://www.contoso.com/diagnostics .
Запрошенный URL /default.aspx?tabid=2&subtabid=24 будет перенаправлен на http: // www.contoso.com/webcasts .
Запрошенный URL-адрес /default.aspx?tabid=7116 будет перенаправлен на http://www.contoso.com/php .
Запрошенный URL / default.aspx не будет перенаправлен, поскольку карта перезаписи не содержит элемента с ключом = «/ default.aspx»; поэтому карта перезаписи вернет пустую строку, которая не будет соответствовать шаблону условия, следовательно, действие правила не будет выполнено.

Модуль перезаписи URL 2.0 Ссылка на конфигурацию

  • 18 минут на чтение

В этой статье

Руслан Якушев

Этот раздел документации относится к модулю перезаписи URL версии 2.0 для IIS 7

В этой статье представлен обзор функциональных возможностей модуля перезаписи URL 2.0 и объясняются новые концепции конфигурации, используемые в этой версии.Для получения подробной информации о конфигурации модуля перезаписи URL 1.1 см. Справочник по настройке модуля перезаписи URL.

Содержание

Обзор функций

Microsoft URL Rewrite Module 2.0 для IIS — это инкрементный выпуск, который включает в себя все функции версии 1.1 и добавляет поддержку заголовков ответов и перезаписи содержимого. Модуль применяет регулярные выражения или шаблон подстановочных знаков к HTTP-ответу, чтобы найти и заменить части содержимого на основе логики перезаписи, выраженной правилами перезаписи исходящего трафика.В частности, модуль можно использовать для:

  • Замените URL-адреса, созданные веб-приложением в ответном HTML-коде, на более удобный и удобный для поисковых систем эквивалент.
  • Измените ссылки в разметке HTML, созданной веб-приложением за обратным прокси.
  • Измените существующие и установите новые заголовки HTTP ответа.
  • Исправить содержимое любого HTTP-ответа, включая JavaScript, CSS, RSS и т. Д.

Предупреждение

Когда заголовки ответа или содержимое ответа изменяются правилом перезаписи исходящего трафика, следует проявлять особую осторожность, чтобы гарантировать, что текст, который вставляется в ответ, не содержит исполняемого кода на стороне клиента, что может привести к уязвимостям межсайтового скриптинга. .Это особенно важно, когда правило перезаписи использует ненадежные данные, такие как заголовки HTTP или строка запроса, для построения строки, которая будет вставлена ​​в ответ HTTP. В таких случаях заменяющая строка должна быть закодирована в HTML с использованием функции HtmlEncode , например:

  
  

Обзор правил исходящего трафика

Основная концепция конфигурации, используемая для перезаписи ответа, — это концепция правила для исходящего трафика.Исходящее правило используется для выражения логики того, с чем сравнивать или сопоставлять содержимое ответа и что делать, если сравнение было успешным.

По сути, исходящее правило состоит из следующих частей:

  • Предварительное условие — Дополнительное предварительное условие используется для проверки метаданных запроса перед началом оценки любого правила. Предварительное условие может состоять из нескольких условных проверок метаданных запроса и может использоваться для фильтрации ответов, которые не следует перезаписывать, например изображений или видеофайлов.
  • Фильтры тегов — Фильтры тегов используются для сужения поиска в ответе до набора хорошо известных или определенных пользователем тегов. С фильтрами тегов только содержимое указанных тегов сопоставляется с шаблоном правила, в отличие от сопоставления всего содержимого ответа с шаблоном.
  • Шаблон — Шаблон правила используется для указания либо регулярного выражения, либо шаблона подстановки, который будет использоваться для поиска в содержимом ответа.
  • Условия — Необязательный набор условий используется для указания дополнительных логических операций, которые необходимо выполнить, если в содержимом ответа было найдено совпадение с шаблоном. В условиях вы можете проверить определенные значения заголовков HTTP или переменных сервера.
  • Действие — Действие используется, чтобы указать, что делать, если совпадение с шаблоном было найдено и все условия правила были успешно оценены.

Выполнение правил

Процесс выполнения исходящих правил отличается от того, который используется для входящих правил.Набор правил для входящего трафика оценивается только один раз за запрос, поскольку его входные данные представляют собой всего лишь одну строку URL-адреса запроса. Набор исходящих правил может оцениваться много раз для каждого ответа, поскольку он применяется в нескольких местах в содержимом ответа HTTP. Например, если есть набор правил, как показано ниже:

Правило 1: применяется к тегу и тегу

Правило 2: применяется к тегу

, а ответ HTML содержит эту разметку:

    Домашняя страница 
  

Затем модуль переопределения URL 2.0 оценит Правило 1 по строке «/default.aspx». Если правило было выполнено успешно, то вывод Правила 1 будет передан Правилу 2. Если Правило 2 было выполнено успешно, то выходные данные Правила 2 будут использоваться для замены содержимого атрибута href в теге в ответе.

После этого URL Rewrite Module 2.0 оценит Правило 1 по строке «/logo.jpg». Если правило было выполнено успешно, его выходные данные будут использоваться для замены содержимого атрибута src в теге в ответе.

Правила наследования

Если правила определены на нескольких уровнях конфигурации, то модуль перезаписи URL оценивает набор правил, который включает распределенные правила из родительских уровней конфигурации, а также правила из текущего уровня конфигурации. Оценка выполняется в порядке от родителей к потомкам, что означает, что родительские правила оцениваются первыми, а правила, определенные на последнем дочернем уровне, оцениваются последними.

Конфигурация правила для исходящего трафика

Сбор предварительных условий

Предварительные условия используются для проверки того, должно ли правило оцениваться по содержимому ответа.Коллекция предварительных условий определяется как именованная коллекция в разделе

и может содержать одну или несколько проверок предварительных условий. Правило исходящего трафика ссылается на коллекцию предварительных условий по имени.

Коллекция предварительных условий имеет атрибут logicalGrouping , который управляет тем, как оцениваются условия. Коллекция предварительных условий оценивается как истина, если:

  • Все предварительные условия в пределах были оценены как истинные при условии, что использовалось logicGrouping = «MatchAll» .
  • По крайней мере одно из предварительных условий было оценено как истинное при условии, что использовалось logicalGrouping = «MatchAny» .

Предварительное условие определяется указанием следующих свойств:

  • Входная строка — Ввод предварительного условия указывает, какой элемент использовать в качестве входных данных для оценки условия. text / html» />

    Фильтры тегов

    Фильтры тегов используются для сужения поиска в содержимом ответа до набора хорошо известных или определенных пользователем тегов HTML./(article\.aspx.*) «/>

    Если ответ HTTP содержит тег привязки, например:

       ссылка 
      

    Затем шаблон правила перезаписи будет сравниваться со строкой: « /article.aspx?id=1 ».

    Предопределенные теги

    Модуль перезаписи URL 2.0 включает набор предопределенных тегов, которые можно использовать с правилами исходящего трафика. В таблице ниже перечислены все предопределенные теги и атрибуты, значения которых будут использоваться в качестве входных данных для шаблона исходящего правила:

    Тег Атрибуты
    А href
    Площадь href
    База href
    Форма действие
    Рама src, longdesc
    Головка профиль
    IFrame src, longdesc
    Изображение src, longdesc, usemap
    Ввод src, карта использования
    Ссылка href
    Скрипт src
    Пользовательские теги

    Если необходимо выполнить перезапись в атрибуте тега, который не включен в коллекцию предопределенных тегов, то можно использовать коллекцию настраиваемых тегов, чтобы указать имя тега и соответствующий атрибут, который необходимо перезаписать. / (article \.aspx. *) «/>

    Образец правил

    Шаблон правила используется для указания, с чем должна соответствовать входная строка правила. Ввод правила отличается в зависимости от конфигурации правила:

    • Если правило использует фильтры тегов, то содержимое сопоставленного тега с атрибутами будет передано в качестве входных данных для сопоставления с образцом.
    • Если правило не использует никаких фильтров тегов, то все содержимое ответа будет передано в качестве входных данных для сопоставления с образцом.

    Шаблон указан в элементе правила перезаписи.

    Соответствие шаблону полного ответа

    Если атрибут filterByTags не указан в элементе соответствия правила, шаблон будет применен ко всему содержимому ответа. Оценка шаблонов регулярных выражений для всего содержимого ответа — это операция, интенсивно использующая ЦП, и она может повлиять на производительность веб-приложения. Существует несколько вариантов уменьшения накладных расходов на производительность, связанных с полным сопоставлением с шаблоном ответа:

    • Используйте кэширование в пользовательском режиме IIS и установите для атрибута rewriteBeforeCache элемента значение true:

        
        

      Обратите внимание, что этот параметр не следует использовать, если для ответов используется кодирование передачи по частям.

    • Используйте атрибут вхождений элемента правила match . Например, когда вы используете правило для вставки некоторого фрагмента HTML в элемент и это правило имеет шаблон, который ищет закрывающий тег —, тогда вы можете установить instances = «1». Это скажет модулю перезаписи прекратить поиск оставшейся части ответа после обнаружения тега.

        
        
    Синтаксис шаблона правил

    Синтаксис шаблона правила можно указать с помощью атрибута patternSyntax правила.([_0-9a-zA-Z -] + /)? (Wp -. *) «

    Подстановочный знак — Синтаксис подстановочного знака, используемый в модуле перенаправления HTTP IIS. Это пример шаблона в следующем формате: «/Scripts/*.js», где звездочка («*») означает «сопоставить любое количество любых символов и зафиксировать их в обратной ссылке». Обратите внимание, что тип шаблона с подстановочными знаками нельзя использовать, если в правиле нет фильтров тегов.

    ExactMatch — поиск точной строки выполняется внутри входной строки.

    Область действия атрибута patternSyntax — для каждого правила, что означает, что он применяется к шаблону текущего правила и ко всем шаблонам, используемым в условиях этого правила.

    Свойства образца правила

    Pattern может быть инвертирован с помощью атрибута negate элемента . При использовании этого атрибута действие правила будет выполняться только в том случае, если входная строка НЕ ​​соответствует указанному шаблону.

    По умолчанию используется сопоставление с шаблоном без учета регистра. Чтобы включить чувствительность к регистру, вы можете использовать атрибут ignoreCase элемента правила.

    Условия правила

    Условия правила позволяют определить дополнительную логику для оценки правила, которая может быть основана на входных данных, отличных от текущей входной строки.Любое правило может иметь ноль или более условий. Условия правила оцениваются после успешного совпадения с шаблоном правила.

    Условия определены в коллекции правила перезаписи. Эта коллекция имеет атрибут logicGrouping , который управляет оценкой условий. Если у правила есть условия, то действие правила будет выполнено только при совпадении с шаблоном правила и:

    • Все условия были оценены как истинные при условии, что использовалось logicalGrouping = «MatchAll» .
    • По крайней мере одно из условий было оценено как истинное при условии, что использовалось logicalGrouping = «MatchAny» .

    Условие определяется указанием следующих свойств:

    • Входная строка — Входные данные условия определяют, какой элемент использовать в качестве входных данных для оценки условия. Ввод условия — это произвольная строка, которая может включать серверные переменные и обратные ссылки на предыдущие шаблоны условий и / или шаблоны правил.
    • Шаблон — Шаблон для поиска во входных данных условия.Шаблон можно указать с помощью синтаксиса регулярного выражения или синтаксиса с подстановочными знаками. Тип шаблона для использования в условии зависит от значения флага patternSyntax , определенного для правила, которому принадлежит это условие. У этого типа условия есть два связанных атрибута, которые управляют сопоставлением с образцом:

    Действие правила

    Действие правила перезаписи выполняется, когда входная строка соответствует шаблону правила и оценка условия выполнена успешно (в зависимости от конфигурации правила, совпадают все условия или одно или несколько условий).Доступны два типа действий, и атрибут «type» элемента конфигурации может использоваться, чтобы указать, какое действие должно выполнить правило. В следующих разделах описаны различные типы действий и параметры конфигурации, относящиеся к конкретным типам действий.

    Действие перезаписи

    Действие перезаписи заменяет текущую входную строку правила строкой подстановки. Строка подстановки указывается в атрибуте value элемента правила.Строка подстановки — это строка произвольной формы, которая может включать следующее:

    • Обратные ссылки на шаблоны условий и правил. (Для получения дополнительной информации см. Раздел о том, как использовать обратные ссылки.)
    • Переменные сервера. (Для получения дополнительной информации см. Раздел об использовании переменных сервера.)
    Нет Действия

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

    Доступ к заголовкам ответа из правил перезаписи

    Содержимое любого ответного HTTP-заголовка может быть получено из правила перезаписи с использованием того же синтаксиса, что и для доступа к серверным переменным, но со специальным соглашением об именах. text / html» />

    Установка заголовков запросов и переменных сервера

    Входящие правила перезаписи в модуле перезаписи URL 2.0 можно использовать для установки заголовков запросов и переменных сервера.

    Список разрешенных серверных переменных

    Глобальные правила перезаписи могут использоваться для установки любых заголовков запросов и переменных сервера, а также для перезаписи любых существующих. Распределенные правила перезаписи могут устанавливать / перезаписывать только заголовки запросов и серверные переменные, которые определены в разрешенном списке для серверных переменных . Если распределенное правило перезаписи пытается установить любую серверную переменную или HTTP-заголовок, который не указан в коллекции , модуль перезаписи URL сгенерирует ошибку времени выполнения.Коллекция по умолчанию хранится в файле applicationHost.config и может быть изменена только администратором сервера IIS.

    Использование правил перезаписи входящего трафика для установки заголовков запросов и переменных сервера

    Элемент правила используется для определения набора переменных сервера и заголовков http, которые необходимо установить. Они будут установлены только в том случае, если шаблон правила совпал и оценка условия прошла успешно (в зависимости от конфигурации правила, совпадают все условия или одно или несколько условий).Каждый элемент в коллекции состоит из следующих элементов:

    • Имя — указывает имя устанавливаемой переменной сервера.

    • Значение — указывает значение переменной сервера. Значение — это строка произвольной формы, которая может включать:

      • Обратные ссылки на шаблоны условий и правил. (Для получения дополнительной информации см. Раздел о том, как использовать обратные ссылки.)
      • Переменные сервера. (Для получения дополнительной информации см. Раздел о том, как использовать серверные переменные.)
    • Флаг «Заменить » — указывает, следует ли перезаписывать значение серверной переменной, если оно уже существует. По умолчанию функция замены включена.

    В следующем примере правило перезаписывает запрошенный URL, а также устанавливает переменную сервера с именем X_REQUESTED_URL_PATH:

      
        
        
            
        
        
    
      

    Примечание: для работы приведенного выше примера необходимо добавить X_REQUESTED_URL_PATH в коллекцию :

      
        
            
        
    
      

    Примечание о заголовках запросов

    Заголовки запроса устанавливаются с использованием того же механизма, что и для переменных сервера, но с особым соглашением об именах.Если имя переменной сервера в коллекции начинается с «HTTP_», это приводит к установке заголовка HTTP-запроса в соответствии со следующим соглашением об именах:

    1. Все символы подчеркивания («_») в имени преобразуются в символы тире («-»).
    2. Все буквы переводятся в нижний регистр.
    3. Префикс «HTTP_» удален

    Например, следующая конфигурация используется для установки настраиваемого заголовка x-original-host для запроса:

      
      

    Установка заголовков ответа

    Исходящие правила перезаписи в модуле перезаписи URL 2.0 можно использовать для установки новых или изменения существующих HTTP-заголовков ответа. Доступ к HTTP-заголовкам ответа осуществляется внутри исходящих правил с использованием того же синтаксиса, что и для переменных сервера, и с использованием соглашения об именах, как описано в разделе Доступ к заголовкам ответа из правил перезаписи.

    Если атрибут serverVariable элемента правила исходящей перезаписи имеет значение, это означает, что это правило перезаписи будет работать с содержимым соответствующего заголовка ответа.$ «/>



    Шаблон правила перезаписи будет применен к содержимому указанного заголовка ответа, и если шаблон правила и необязательные условия оцениваются успешно, значение этого заголовка ответа будет перезаписано.

    Шаблоны регулярных выражений и простой доступ к существующим заголовкам запросов и ответов в правиле перезаписи обеспечивают большую гибкость при определении логики перезаписи заголовков HTTP ответов.301 «/>




    Использование обратных ссылок в правилах перезаписи

    Части входных данных правил или условий могут быть захвачены в обратных ссылках. Затем их можно использовать для создания URL-адресов подстановки в действиях правил или для создания входных строк для условий правила.

    Обратные ссылки генерируются по-разному, в зависимости от того, какой синтаксис шаблона используется для правила.Когда используется синтаксис шаблона ECMAScript, обратная ссылка может быть создана путем помещения скобок вокруг части шаблона, которая должна фиксировать обратную ссылку. Например, шаблон ([0-9] +) / ([a-z] +). Html захватит 07 и article в обратных ссылках из этой строки: 07 / article.html . Когда используется синтаксис шаблона «Подстановочный знак», всегда создаются обратные ссылки, когда в шаблоне используется символ звездочки (*).

    Использование обратных ссылок одинаково, независимо от того, какой синтаксис шаблона использовался для их захвата.Обратные ссылки могут использоваться в следующих местах в правилах перезаписи:

    • В строке ввода условия

    • В действии правила, а именно:

      • Атрибут url действия перезаписи и перенаправления во входящих правилах
      • Атрибут значения

      • действия перезаписи в исходящих правилах
      • statusLine и responseLine действия CustomResponse
    • В ключевом параметре карты перезаписи

    Обратные ссылки на шаблоны условий идентифицируются {C: N}, где N от 0 до 9; обратные ссылки на шаблон правила обозначаются {R: N}, где N от 0 до 9. article \.aspx «>
    <условия>





    Обратная ссылка {C: 1} всегда будет содержать значение группы захвата из второго условия, которое будет значением параметра строки запроса p2.статья \ .aspx «>
    <условия trackAllCaptures = "true">





    Обратная ссылка {C: 1} будет содержать значение группы захвата из первого условия, а обратная ссылка {C: 2} будет содержать значение группы захвата из второго условия./ ([a-zA-Z] +) / ([0-9] +) / $ «/>


    Если {REQUEST_URI} содержит «/ article / 23 /», а {QUERY_STRING} содержит «p1 = 123 & p2 = abc», то обратные ссылки условия будут проиндексированы следующим образом:

    {C: 0} — «/ article / 23 /»
    {C: 1} — «article»
    {C: 2} — «23»
    {C: 3} — «abc»

    Ведение перезаписанных URL-адресов в журналы IIS

    Распределенное входящее правило перезаписи можно настроить так, чтобы записывать перезаписанные URL-адреса в файлы журнала IIS вместо записи исходных URL-адресов, запрошенных HTTP-клиентом.article / (\ d +) $ «/>


    Понимание правил перезаписи и перенаправления IIS

    Некоторое время назад я отвечал на вопрос о stackoverflow, спрашивая пояснения о модуле перезаписи IIS и о том, как работают обратные ссылки.
    Этот вопрос привлек довольно много внимания с тех пор, как был опубликован, и я хотел написать здесь простое руководство для этого модуля.

    Что такое модуль перезаписи IIS?

    Модуль перезаписи для IIS может использоваться для выполнения 2 действий:

    • rewrite => URL остается прежним, но контент загружается откуда-то еще
    • редиректы => когда браузер пользователя переходит на новый URL

    Оба используют одни и те же правила и условия, чтобы определить, следует ли запускать действие или нет, и в этой статье основное внимание будет уделено одному из них.код $ «/>

    Это правило проверяет, соответствует ли запрошенный путь точно , код (как в URL http://website.com/code), и, если это так, перенаправляет пользователя на https: // github .com

    Обратные ссылки

    Теперь самое интересное, когда вы начинаете использовать обратные ссылки. Если вы хотите, чтобы ваше действие зависело от части (или всего) запрошенного URL-адреса, вы можете использовать обратные ссылки для вызова этих значений. означает, что тест начнется в начале пути.

  • Следующая последовательность (. *) захватит любой символ.
  • Последний символ $ означает, что тест останавливается в конце пути.

Важно: правило применяется только к пути; не позволяйте названию url вводить вас в заблуждение. (например, в http://example.com/test схема и имя домена игнорируются при сопоставлении «url»)

Теперь мы хотим использовать значение, полученное в тесте, для перенаправления.Тут на помощь приходит обратная ссылка {R: 1} .
Часть {R: 1} будет содержать все, что было захвачено внутри последовательности (. *) во время теста.
Мы также можем использовать {R: 0} , поскольку он содержит всю входную строку.

Если мы применим, например, URL http://website.com/github к этому правилу, {R: 1} будет содержать github .
Это означает, что в сочетании с действием пользователь попадает на сайт http: //.(www \.) (. *) $ и входная строка www.foo.com , у вас будет:

  {R: 0} - www.foo.com
{R: 1} - www.
{R: 2} - foo.com
  

Ссылка 0 всегда содержит полный ввод, в то время как 1 будет содержать первую часть строки, соответствующую шаблону в первой скобке () , ссылку 2 на вторую и т. Д. До номера ссылки 9 .

Условия

Когда вы добавляете условия в свое правило, вы получаете доступ к дополнительным данным из запроса.. + $ (один или несколько символов) против ввода {HTTP_HOST} .
В этом случае мы используем {C: 0} . C обозначает условий (против R для правила ), а 0 просто означает все входное значение.

Вы можете найти список серверных переменных и их документацию здесь:
https://msdn.microsoft.com/en-us/library/ms524602(v=vs.90).aspx
(там написано IIS 6, но применимо и до более высоких версий)

Примечание:
  • , вы можете использовать захваченное значение в правиле (например, {R: 1} ) внутри условий.. + $ «/> ), который сам содержит значение предыдущего условия и запрошенную строку запроса.

    Если вы хотите иметь возможность захватывать несколько условий, чтобы повторно использовать их в своем действии, вы можете использовать . Дополнительная информация доступна здесь: http://www.iis.net/learn/extensions/url-rewrite-module/url-rewrite-module-20-configuration-reference#Tracking_capture_groups_across_conditions_

    Как отлаживать

    Отладка правил перезаписи может быть сложной и временами раздражающей … но есть очень хороший инструмент, доступный с модулем, который называется инструментом отслеживания неудачных запросов. code $» />

    Но если вы попробуете, скорее всего, он не будет работать должным образом (читайте: он не покажет содержание https://github.com).
    Это связано с тем, что вам нужно установить модуль маршрутизации запросов приложений и установить режим прокси на , включить .

    Этот модуль — это гораздо больше, и я настоятельно рекомендую вам прочитать официальную документацию: http://www.iis.net/learn/extensions/url-rewrite-module/url-rewrite-module-configuration-reference

    Что-то не так или хотите задать вопрос?

    Свяжитесь с нами в Твиттере

    Далее: Вы можете найти больше статей в этом блоге, перейдя на домашнюю страницу.

    Примеры моих самых полезных правил перезаписи IIS

    За годы работы в качестве разработчика программного обеспечения .NET я заметил, что снова и снова использую одни и те же правила перезаписи IIS в разных проектах для решения одних и тех же бизнес-задач. Ниже я приведу примеры наиболее полезных правил перезаписи IIS, которые я использую.

    Храните все свои правила в отдельном файле

    Технически это не правило перезаписи, но я бы сказал, что это одна из самых важных функций для меня, потому что, когда вам нужно перемещать правила между проектами, очень легко скопировать один файл.Еще одно преимущество состоит в том, что их разделение позволяет упростить управление версиями. Когда что-то не работает должным образом, гораздо проще просмотреть историю одного файла правил перезаписи вместо того, чтобы просматривать все изменения в web.config.

    Чтобы сохранить свои правила в отдельном файле, измените раздел правил, как показано ниже, где configSource указывает на ваш файл правил перезаписи (вы можете назвать его по-другому, если хотите)

      <перезапись>
    
      

    Ваш файл rewriteRules.config будет выглядеть, как показано ниже, он не требует объявления схемы и начинается непосредственно с тега .

      <правила>
    
    
      

    Каноническое имя хоста Правило перезаписи IIS

    Существует много споров о том, должен ли ваш веб-сайт иметь префикс www или нет, я считаю, что этого не должно быть, поэтому я обычно удаляю этот префикс www, перенаправляя пользователей на URL без www по следующему правилу.www \. (. +) $ «/>


    Перенаправление на HTTPS с использованием правила перезаписи IIS

    Не так уж много веб-сайтов осталось без сертификата SSL, и большинство существующих сайтов уже доступны по HTTPS. Чтобы избежать обслуживания вашего контента с двух разных URL-адресов, вам необходимо перенаправить все запросы на защищенную версию вашего веб-сайта, используя следующее правило перезаписи IIS.ВЫКЛ $ «ignoreCase =» true «/>


    Удалите косые черты в конце URL с помощью правила перезаписи IIS

    Это правило перезаписи IIS служит для удаления конечных косых черт из URL-адресов вашего веб-сайта и предотвращения наличия одной и той же страницы на двух разных URL-адресах.

      
    
    <условия>
    
    
    
    
      

    Правило перезаписи IIS для статического перенаправления страницы 301

    При переходе на другую CMS у вас часто будет другая структура URL-адресов, а в некоторых случаях вам нужно перенаправить свои старые URL-адреса на новые, чтобы избежать появления большого количества страниц 404 в поисковых системах.Приведенное ниже правило выполняет 301 (постоянное) перенаправление с вашего старого URL-адреса на новый URL-адрес. В моем случае я храню отдельный файл со всеми перенаправлениями, который определен в вашем web.config, как показано ниже

      <перезапись>
    
    
      

    Фактическое правило, которое вы сохраняете в файле rewriteRules.config, находится ниже.

      
    
    <условия>
    
    
    
      

    Файл rewritemaps.config содержит взаимно-однозначное соответствие между старым URL-адресом и новым URL-адресом и выглядит так, как показано ниже. Для StaticRedirects вам необходимо использовать первый раздел с именем «StaticRedirects», которое совпадает с именем вашего условия.Еще две части файла rewriteMaps будут объяснены ниже.

      
    
    
    
    
    
    
    
    
    
    
      

    Как перезаписать URL-адрес с помощью правил перезаписи IIS

    В некоторых случаях вам нужно переписать один URL на другой, например, у вас есть файл robots.txt, которую ваша CMS обслуживает по URL-адресу / robotstxt, но на самом деле поисковые системы ожидают, что это будет /robots.txt. Это можно сделать, используя приведенное ниже статическое правило перезаписи, где мы используем тот же файл rewritemaps.config с другим разделом этого файла, используемым для перезаписи.

      
    
    <условия>
    
    
    
      
      
    
    
    
    
    
    
      

    Как обрабатывать запросы к страницам, которые больше не доступны на веб-сайте, с помощью правил перезаписи IIS

    При переходе на другую CMS вы можете удалить некоторые страницы со своего веб-сайта, потому что они больше не нужны, но Google по-прежнему имеет ссылки на эти страницы и постоянно пытается получить к ним доступ и возвращает ошибку 404. Чтобы избежать этой ошибки и сообщить поисковым системам, что страница исчезла, вы можете использовать следующее правило.Это позволит поисковой системе узнать, что она должна прекратить попытки доступа к страницам, потому что это не временная проблема, а страницы удалены навсегда.

      
    
    <условия>
    
    
    
      
      
    
    
    
    
      

    Алекс Шаповалов — основатель канадской компании Yaplex, занимающейся консалтингом и разработкой программного обеспечения.Алекс предоставляет ИТ-консалтинг и услуги по разработке программного обеспечения .NET в Канаде и США.

    8 самых полезных правил перезаписи IIS

    В ASP.NET доступно множество вариантов маршрутизации. Тем не менее, все же возникает ситуация, когда вам нужно настроить URL-адрес, и в этой ситуации полезно манипулировать динамикой кода. В этом случае лучший вариант — использовать модуль перезаписи IIS. Когда вы преобразуете множество URL-адресов вне кода, это позволит вам выполнять перенаправление для архивов и передавать контент без вмешательства кодов.

    Маркетологи могут беспрепятственно внедрять оптимизацию поисковых систем и быстро манипулировать без изменения кода. Модуль перезаписи URL — это расширение IIS, которое можно загрузить отдельно на предварительно установленных веб-сайтах Windows Azure. В IIS вы можете загрузить и установить его с помощью установщика веб-платформы Microsoft

    .

    В этом посте вы познакомитесь с некоторыми полезными правилами перезаписи IIS, которые могут пригодиться, когда вы хотите решить проблемы на основе URL-адресов для вашего веб-сайта или веб-сервера.

    1.Попробуйте настроить с помощью завершающей косой черты

    Многие веб-приложения созданы с использованием «виртуальных URL-адресов». Это URL-адрес, который не ведет напрямую к файлам или структуре каталогов в файловой системе веб-сервера. Например, приложение ASP.NET MVC встроено с таким форматом URL-адреса, который выглядит следующим образом — http://stackoverflow.com/questions/60857/modrewrite-equivalent-for-iis-7-0.

    Теперь, если вы попытаетесь выполнить поиск по тому же URL без косой черты, результат будет таким же, что отлично подходит для посетителей-людей.Но для поисковых роботов или служб веб-аналитики дело может быть другим. Различные URL-адреса одной и той же страницы могут побудить сканеры по-разному обрабатывать одну и ту же страницу; это может повлиять на рейтинг вашей страницы. Это разделит веб-аналитику для страницы.

    Таким образом, чтобы решить эту проблему, вы можете переписать правила IIS. Использование косой черты в конце URL полностью зависит от ваших личных предпочтений. Однако, как только вы примете решение, вы можете применить канонический URL-адрес, используя эти правила записи.

    Для удаления косой черты в конце

      
    
    <условия>
    
    
    
    
    
      

    Чтобы добавить косую черту в конце

      
        
        <условия>
            
            
    
        
    
      

    2. Попробуйте изменить префикс «WWW»

    Аналогично завершающей косой черте вы можете добавить или удалить префикс «www» в своем URL-адресе. Добавляя или удаляя «www» из URL-адреса, вы можете существенно изменить свой URL-адрес для лучшего ранжирования с точки зрения поисковых роботов и веб-аналитики.www \. (. +) $ «/>



    3. Реализуйте правило URL-адреса нижнего регистра

    Та же проблема, что и в двух вышеупомянутых случаях с www и завершающей косой чертой, может возникнуть, когда кто-то ссылается на ваш веб-сайт при различных обстоятельствах. Поисковые роботы будут индексировать одни и те же страницы как две отдельные страницы. а в отчетах веб-аналитики будут созданы две независимые статистики, которые повлияют на рейтинг.Чтобы решить эту проблему, перенаправляйте посетителей на канонический URL, даже если они используют неканоническую ссылку. Этот код может помочь в реализации решения:

      
        
        
    
      

    Источник: https://ruslany.net/2009/04/10-url-rewriting-tips-and-tricks/

    4.Перенаправление с домена 1 на домен 2

    Это полезное правило перезаписи IIS, когда вы изменили имя своего сайта или хотите направить трафик на свой основной сайт. Если ваш новый и старый URL имеют одни и те же компоненты, вам просто нужно перенаправить свой старый домен на новый домен, чтобы ваши посетители не заблудились. Чтобы реализовать это перенаправление, вы можете использовать это правило:

      
        
        <условия>
            
        
        
    
      

    5. Перенаправление на HTTPS

    Когда незащищенное соединение HTTP обращается к веб-сайту, требующему сертификации SSL, IIS отвечает кодом состояния HTTP 403. Не о чем беспокоиться, если вы хотите, чтобы посетители вводили полный URL-адрес вашего веб-сайта, начиная с «http: // ..». Но, если вы собираетесь сделать свой веб-сайт легко доступным для посетителей, не сталкиваясь с проблемой кода состояния 403.ВЫКЛ $ «/>



    Важное примечание — Чтобы применить это правило на том же веб-сайте, необходимо снять флажок «Требовать SSL». Однако, если вы не хотите этого делать, вы можете настроить два разных веб-сайта в IIS — связать друг с другом, а затем вставить это правило в файл web.config сайта с привязкой https.

    6.Перенаправление конкретного поддомена

    Если вы хотите удалить заархивированный блог или сайт со своего веб-сайта, вы должны применить это правило IIS, чтобы сопоставить поддомен, а затем перенаправить на новый путь. Например, вы можете в любое время отправить свой blog.mysite.com/someentry/ на адрес mysite.com/blog/entry/. В первую очередь это делается для целей SEO. Для этого метода привязки веб-сайтов вы должны вставить старое имя хоста домена блога, чтобы завершить процесс.

      
        
        <условия>
            
        
        
    
      

    7. Обработка кода состояния HTTP 503

    Код состояния

    HTTP 503 означает, что сервер сейчас не может обработать запрос из-за технического обслуживания. Это временная ситуация, но когда поисковые роботы получают ответ сервера HTTP 503 с вашего веб-сайта, они не будут индексировать этот ответ, но вернутся позже.товары / распродажа /.* «/>


    8. Запретить другим пользователям делать горячие ссылки на ваши изображения

    Image Hotlinking означает получение изображений с других веб-сайтов. При неавторизованном хотлинкинге изображений ваша пропускная способность увеличится. Есть и другие проблемы с горячими ссылками на изображения, такие как авторское право или использование изображений в несоответствующем контексте.http: // somesite \ .com /.*$ «negate =» true «/>



    Использование правил модуля перезаписи URL может помочь в повышении рейтинга и производительности вашего сайта. Выше приведены некоторые примеры того, что можно делать с простыми правилами без использования кода. Таким образом, следуйте правильным правилам перезаписи IIS, чтобы приветствовать веб-сканеры и веб-аналитику для лучшей индексации. Чтобы узнать больше, посетите Microsoft docs.

    Самые распространенные ошибки при использовании модуля перезаписи URL-адресов IIS — Программист-полукровка

    Авторские права © Лекс Ли. Канада Мальтаж, Монреаль.

    Модуль перезаписи URL-адресов IIS является очень важным дополнением к платформе и предоставляет всевозможные возможности для получения полного контроля над URL-адресами. Когда правильные правила созданы и размещены там, многие сценарии, которые было трудно реализовать, больше не являются чудесами.

    Но гибкость имеет свою цену, и люди могут совершать ошибки, если они слепо переходят к созданию правил, даже не играя с примерами, опубликованными Microsoft на их прекрасном сайте документации.

    Здесь я показываю несколько типичных ошибок, которые делают многие, и надеюсь, что прочитав их, вы легко сможете найти свою.

    Наконечник

    Прочтите все связанные статьи, опубликованные Microsoft, и протестируйте примеры правил на своем компьютере, чтобы ознакомиться с различными частями этого модуля, такими как основная структура правил, условия, карты перезаписи и правила исходящего трафика. Позже, когда вы начнете создавать свои собственные правила, эти знания направят вас на верный путь.

    Ошибка 1. Установлено неправильное значение для URL-адреса

    Атрибут Tag

    Кто-то может легко броситься на ноги, чтобы написать правило перезаписи, как показано ниже,

      <перезапись>
      <правила>
        
          
          
          
        
      
    
      

    Наконечник

    Также обратите внимание, что URL-адрес в теге не имеет / в начале. Если вы поместите туда /, то IIS не сможет сопоставить страницу.

    Ошибка 2: Используйте перезапись, когда действительно требуется перенаправление

    Часто вы хотите выполнить перенаправление HTTP на HTTPS и найти правило в Интернете.Однако вместо того, чтобы копировать его, вы хотели бы немного изменить его,

      <перезапись>
      <правила>
        
          
          <условия logicalGrouping = "MatchAny">
            
          
          
        
      
    
      

    Почему не работает? Поскольку HTTP и HTTPS используют разные порты TCP, и если не в режиме прокси, IIS не сможет правильно обслуживать контент. webmail / (.*) «/>




    Если в таких случаях вы не включите режим прокси ARR, IIS должен ответить с ошибкой 404.

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

    Примечания на полях

    Microsoft должна сделать redirectType = "Found" значением по умолчанию для действий перезаписи, поскольку такое перенаправление 302 не кэшируется браузерами.Вам следует вручную добавить это в теги во время разработки правил, чтобы вам не приходилось вручную очищать кеши браузера или переходить в режим приватного просмотра.

    Очень важно научиться устранять проблемы с правилами перезаписи URL. Обычно отслеживание неудачных запросов должно быть включено во время ваших экспериментов, чтобы вы знали, почему иногда правило не работает.

    Вам также необходимо грамотно использовать диспетчер IIS для проверки регулярных выражений.

    Технический справочник по веб-службам

    — Настройка IIS

    Следующие шаги создают новое правило для входящих подключений.

  • На веб-сервере с помощью проводника Windows создайте корневой каталог \ I3Root \ Server1 .

    Пример: C: \ inetpub \ wwwroot \ I3Root \ Server1

    Примечание:
    Следующие шаги создают в этом каталоге файл web.config . Используйте Server1 и Server2 (при использовании переключения) в качестве имен подкаталогов. Вы можете распаковать IWT_I3Root- X X .заархивируйте файлы в другое место, кроме каталога I3Root под корневым каталогом вашего веб-сайта. Однако, если обратный прокси-сервер указывает на каталог, отличный от \ I3Root \ Server1 \ I3Root \ Server2 , если используется переключение), отредактируйте index.html вручную. чтобы обратный прокси работал. Для получения дополнительной информации см. Каталог обратного прокси.

  • На веб-сервере откройте IIS Manager Administrative Tools ).

  • На панели навигации Connections в разделе Sites найдите (корневой веб-каталог) / I3Root / Server1 .

    Примечание:
    Если у вас есть несколько веб-сайтов на вашем веб-сервере, корневой каталог является корневым каталогом для веб-сайта, на котором вы устанавливаете Interaction Web Tools.

  • На средней панели в разделе IIS дважды щелкните URL-адрес Rewrite .

  • Щелкните Добавить правила на панели Действия справа.

  • В диалоговом окне Добавить правила в разделе Входящие и исходящие правила выберите Обратный прокси и нажмите ОК .

  • В диалоговом окне Добавить правила обратного прокси введите имя вашего сервера CIC в Введите имя сервера или IP-адрес, на который будут пересылаться HTTP-запросы. текстовое поле.

    Примечание:
    При использовании SSL используйте полное доменное имя (например, abc-ic1.company.com), а не имя хоста (abc-ic1) или IP-адрес.

  • Выполните одно из следующих действий:

    • Если соединение веб-браузера посетителя с веб-сервером — SSL, но соединение веб-сервера с сервером CIC — не SSL, установите флажок Включить SSL OffLoading .

    • Если соединение веб-браузера посетителя с веб-сервером — SSL, а соединение веб-сервера с сервером CIC — также SSL, снимите флажок Включить SSL OffLoading .

    • Если соединение веб-браузера посетителя с веб-сервером не SSL, этот флажок не применяется. Его настройка не имеет значения, поскольку нет SSL для разгрузки (расшифровать на веб-сервере и отправить на сервер CIC в виде простого текста).

    Примечание:
    Для получения дополнительной информации об этом флажке и разгрузке SSL см. Описание в шаге 1.6 на http://www.iis.net/learn/extensions/configuring-application-request-routing-(arr)/http-load-balancing- с использованием-маршрутизации-запроса-приложения.

  • Щелкните ОК .

  • В центральной части окна диспетчера информационных служб Интернета (IIS) дважды щелкните только что созданное правило.

  • В разделе Action Properties панели Edit Inbound Rule в текстовом поле Rewrite URL вы увидите http: // ICServer / {R: 1} . Добавьте соответствующий номер порта, выполнив одно из следующих действий:

    • Измените свойство на http: // ICServer: 8114 / {R: 1} .

    • При использовании SSL измените свойство на https: // ICServer: 3508 / {R: 1} .

    Примечание:
    Для получения дополнительной информации см. Настройка SSL.

  • На панели Действия щелкните Применить .

  • При желании, если на сервере CIC открыты и порт HTTP (8114), и порт HTTPS (3508), вы можете создать 2 правила перезаписи URL. Добавьте условие для каждого, которое направляет выбранный трафик с веб-сервера на определенный порт на сервере CIC.

    Примечание:
    Без условий трафик направляется на порт, указанный в правиле. При наличии условий применимое условие перенаправляет трафик. Вот пример, который перенаправляет трафик веб-сервера на основе URL-адреса, используемого посетителем вашего веб-сайта.

    1. Создайте два правила перезаписи URL-адресов, дважды выполнив инструкции из раздела «Настройка IIS». Создайте одно правило для HTTP-порта CIC-сервера и второе для HTTPS-порта.

    2. Измените правило, которое направляет трафик на порт HTTP (8114). Следующие шаги направляют HTTP-трафик на порт, указанный в правиле.

      1. Разверните раздел Условия на панели Редактировать правило для входящих событий .

      2. Щелкните Добавить .

      3. В диалоговом окне Добавить условие в текстовом поле Ввод условия введите {HTTPS} .

      4. В текстовом поле Pattern введите Off .

      5. Щелкните ОК .

    3. Измените правило, которое направляет трафик на порт HTTPS (3508). Следующие шаги направляют трафик HTTPS на порт, указанный в правиле.

      1. Разверните раздел Условия на панели Редактировать правило для входящих событий .

      2. Щелкните Добавить .

      3. В диалоговом окне Добавить условие введите в текстовое поле Ввод условия .

      4. В текстовом поле Pattern введите On .

      5. Щелкните ОК .

  • Если используется переключение, сделайте следующее:

    1. Создайте каталог с именем (корневой веб-каталог) \ I3Root \ Server2 .

    2. В диспетчере IIS повторите шаги 3–12. Создайте правило или правила обратного прокси для этого каталога, но укажите имя хоста или IP-адрес другого сервера CIC.

  • Настройте IIS для обработки index.html как допустимого имени для документа по умолчанию или переименуйте index.html в default.htm .

    Чтобы установить index.html в качестве документа по умолчанию:

    1. В диспетчере IIS, все еще под Sites в домашнем представлении I3Root \ Server1 , в IIS дважды щелкните Default Document .

    2. На панели Действия справа щелкните Добавить .

    3. В диалоговом окне Добавить документ по умолчанию в текстовом поле Имя введите index.html и нажмите ОК .

  • Закройте диспетчер IIS.

  • Откройте браузер, перейдите по адресу http: // webserver / I3Root и создайте чат или обратный вызов.

  • .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *