Как известно, большинство сайтов могут быть доступны как по доменам второго уровня, так и по доменам третьего уровня с 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-адресов».
На панели справа нажмите
«Добавить правила...».
В появившемся окошке, в разделе
«Правила для входящего трафика» выберите
«Пустое правило» и нажмите на кнопку
«Ok».
Укажите название правила, удобное для вас, чтобы можно было понять, что делает правило.
В блоке
«Соответствует url-адресу» в поле
«Использование» выберите элемент списка
«Постановочные знаки». В поле
«Шаблон» введите звездочку (*).
В блоке
«Условия» нажмите на кнопку
«Добавить».
В появившемся окошке, в поле
«Ввод условия» укажите строку
{HTTP_HOST}.
В списке
«Проверить, если входная строка» выберите
«Соответствует шаблону».
В поле шаблон, введите домен, с которого будет делаться перенаправление. Например, если нужно чтобы с домена
www.yolper.ru делалось перенаправление на домен
yolper.ru, то нужно указать в шаблон домен
www.yolper.ru.
Нажмите на кнопку
«Ok», чтобы добавить условие.
В разделе
«Действие» в списке
«Тип действия» выберите
«Перенаправление» .
В поле
«URL-адрес перенаправления» укажите адрес, на который будет делаться перенаправление. Например:
http://yolper.ru/{R:0}. Обязательно укажите
{R:0}, чтобы в адрес перенаправления были передан путь и параметры запроса.
Включите опцию
«Добавить строку запроса».
В списке
«Тип перенаправления» укажите нужный тип перенаправления, в идеале -
«Постоянно (301)», чтобы неправильные адреса не попадали в поисковый индекс.
Нажмите на ссылку
«Применить» на панели справа, чтобы сохранить правило.
Всё, теперь все запросы к домену
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>
Примечание. Описанный метод можно также использовать для перенаправления любых других адресов.