войти · зарегистрироваться
А вы знаете, что:
Каждый ёлпер приносит пользу.

Реклама ↓

Настройка перенаправления адресов в IIS 7.x (WWW, no-WWW)

Как известно, большинство сайтов могут быть доступны как по доменам второго уровня, так и по доменам третьего уровня с www. Например: yolper.ru и www.yolper.ru. Однако для поисквых систем сайты с www и без являются разными, хотя и могут иметь одинаковое содержание. Это плохо влияет на поисковую индексацию. В этом ёлпере показано, как настроить перенаправление адресов с www на адреса без www (или наоборот) через механизм переопределения url в IIS 7.x.
Модуль IIS URL Rewrite 2.0 не входит в состав IIS и его нужно скачать и установить отдельно. Скачать URL Rewrite 2.0 можно отсюда.

Для выполнения всех описанных в этом ёлпере операций необходим доступ к сайту через IIS.

Можно конечно сделать все кодом, прописав правила в web.config, но у нас тут Ёлпер, основная идея которого - это показать, как все делается визуально, мышкой.

Итак, приступим. Запустите «Диспетчер служб IIS». Выберите нужный сайт. В разделе IIS выберите элемент «Переопределение URL-адресов».

1-953167755.png
На панели справа нажмите «Добавить правила...».

1-601795864.png
В появившемся окошке, в разделе «Правила для входящего трафика» выберите «Пустое правило» и нажмите на кнопку «Ok».

1-1559595546.png
Укажите название правила, удобное для вас, чтобы можно было понять, что делает правило.

name.png
В блоке «Соответствует url-адресу» в поле «Использование» выберите элемент списка «Постановочные знаки». В поле «Шаблон» введите звездочку (*).

1-1242115728.png
В блоке «Условия» нажмите на кнопку «Добавить».

1-630327709.png
В появившемся окошке, в поле «Ввод условия» укажите строку {HTTP_HOST}.

В списке «Проверить, если входная строка» выберите «Соответствует шаблону».

В поле шаблон, введите домен, с которого будет делаться перенаправление. Например, если нужно чтобы с домена www.yolper.ru делалось перенаправление на домен yolper.ru, то нужно указать в шаблон домен www.yolper.ru.

Нажмите на кнопку «Ok», чтобы добавить условие.

cnd.png
В разделе «Действие» в списке «Тип действия» выберите «Перенаправление» .

В поле «URL-адрес перенаправления» укажите адрес, на который будет делаться перенаправление. Например: http://yolper.ru/{R:0}. Обязательно укажите {R:0}, чтобы в адрес перенаправления были передан путь и параметры запроса.

Включите опцию «Добавить строку запроса».

В списке «Тип перенаправления» укажите нужный тип перенаправления, в идеале - «Постоянно (301)», чтобы неправильные адреса не попадали в поисковый индекс.

action.png
Нажмите на ссылку «Применить» на панели справа, чтобы сохранить правило.

save.png
Всё, теперь все запросы к домену www.yolper.ru будут перенаправляться на домен yolper.ru. При этом, будет сохраняться путь запроса. Например, при обращении к адресу http://www.yolper.ru/104 будет делаться перенаправление на адрес http://yolper.ru/104.

Если открыть файл web.config (сайта), то там можно найти следующий код для созданного правила:
<rewrite>
  <rules>
    <rule name="Без WWW" patternSyntax="Wildcard" stopProcessing="true">
      <match url="*" />
        <conditions>
          <add input="{HTTP_HOST}" pattern="www.yolper.ru" />
        </conditions>
        <action type="Redirect" url="http://yolper.ru/{R:0}" />
    </rule>
  </rules>
</rewrite>


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

Нам важно знать ваше мнение

Пожалуйста, помогите нам понять, насколько полезна информация на этой странице, помогла ли она решить возникшие у вас проблемы? Для ответа, нажмите на одну из трех кнопок:

0

Twitter Mail.Ru Facebook Вконтакте Я.ру ЖЖ
Постоянный адрес этого ёлпера:
Разместить в блоге:
Разместить на форуме:
помогло 34 · не помогло 3 · просмотров 7053
14 ноября 2013 → 13:48 · @Алексей Немиро
@dajver · 19 августа 2015 → 15:42
есть сайт http://xxx.xxx.ru (пример)
надо чтобы при наборе http://xxx.xxx.ru перенаправлялся на http://xxx.xxx.ru:81/WebServerISAPI.dll/$