Как настроить 301 редирект htaccess или web.config
Опубликовано: 11.06.2017
Код состояния HTTP 301 (Moved Permanently или 301 редирект) — это стандартный код ответа сервера, который сообщает, что запрашиваемый ресурс перемещен и получил новый URL. Когда он необходим? С 301-ым редиректом вы обязательно столкнетесь при склейке зеркал сайта с префиксом WWW и без него, в случае переезда сайта на новый домен, переноса страницы в другой раздел сайта и изменения ее адреса. Во всех этих случаях вам нужно сохранить текущий трафик, перенаправляя его на нужные страницы. Как это сделать? Смотрите техническую инструкцию в новом посте.
Настроить 301-й редирект можно разными способами (с помощью HTML, PHP, плагинов для CMS, скриптов), но самый надежный и простой вариант — с помощью .htaccess (для Apache) или web.config (для IIS).
301 редирект htaccess
.htaccess — это файл дополнительной конфигурации веб-сервера Apache, с помощью которого можно задавать настройки на уровне отдельных каталогов. В отличие от главного файла конфигурации httpd.conf , директивы в .htaccess распространяются только на тот каталог, где он размещен, и на дочерние каталоги.
301 редирект с www на без www через htaccess
Если в корневой папке вашего сайта нет файла .htaccess, его нужно создать и загрузить с помощью FTP-клиента. Теперь можно приступать к настройке.
Когда вам требуется сделать редирект с текущего домена на другой (например, при переезде сайта), можно использовать директивы модуля mod_alias. Пропишите в .htaccess следующую директиву (вместо newsite.ru укажите ваш новый домен):
Redirect permanent / http://newsite.ru/или
Redirect 301 / http://newsite.ru/Приведем еще ряд примеров.
Редирект со страницы page1.html на страницу page2.html: Redirect 301 /page1.html site.ru/page2.html Редирект с главной страницы сайта на страницу каталога /cat: Redirect 301 / site.ru/cat Редирект с каталога /cat на главную: Redirect 301 /cat site.ruРедирект часто используют для склеивания зеркал . В этом случае применяется модуль mod_rewrite. Например, если вы хотите, чтобы шел редирект с домена с www на домен без www, то пропишите такие строки (где yoursite.ru — ваш домен):