301 редирект — это постоянное перенаправление пользователя и поискового бота на другой адрес, отличный от изначально запрашиваемого.
301 редирект — эффективный способ сохранить трафик, позиции, ссылочный вес страниц сайта при:
Правило: все 301 редиректы в файле .htaccess лучше размещать после этих записей:
Options +FollowSymLinks
RewriteEngine On
Вариант №1
Redirect 301 /page-1/ http://site.com/page-2/
Вариант №2 с помощью регулярного выражения:
RewriteCond %{REQUEST_URI} ^/page/$
RewriteRule ^.*$ http://site.com/page-2/? [R=301,L]
RewriteCond %{HTTP_HOST} ^site\.com$ [NC]
RewriteRule ^(.*)$ http://www.site.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^site.com [NC]
RewriteRule ^(.*)$ http://www.site.com/$1 [L,R=301,NC]
RewriteCond %{HTTP_HOST} ^www.site\.com$ [NC]
RewriteRule ^(.*)$ http://site.com/$1 [R=301,L]
RewriteCond expr «tolower(%{REQUEST_URI}) =~ /(.+)/»
RewriteRule [A-Z] %1 [R=301,L]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} ![^\/]$
RewriteRule ^(.*)\/$ /$1 [R=301,L]
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]
Вариант №1
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
Вариант №2
RewriteCond %{HTTPS} =on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Вариант №3
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Вариант №4
RewriteCond %{SERVER_PORT} ^80$ [OR]
RewriteCond %{HTTP} =on
RewriteRule ^(.*)$ https://domain.ru/$1 [R=301,L]
Вариант №1
RewriteCond %{HTTPS} «on»
RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,QSA]
Вариант №2
RewriteCond %{HTTPS} =on
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html|htm)\ HTTP/
RewriteRule ^(.*)index\.(php|html|htm)$ http://site.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^first-site\.com$ [NC]
RewriteRule ^(.*)$ http://www.newsite.com/$1 [R=301,L]
RewriteCond %{REQUEST_URI} /index.php
RewriteCond %{QUERY_STRING} ^\z
RewriteRule ^(.*)$ http://site.com/? [R=301,L]
Если требуется настроить редирект только для адреса http://www.site.com/files/, но при этом надо, чтобы страница http://www.site.com/files/index.php?IBLOCK_ID=16 открывалась по старому адресу, необходимо использовать символ $ в правиле.
RewriteRule ^files/$ http://www.site.com/new-folder/ [R=301,L]
RewriteRule ^bitrix/ /bitrix/admin/ [L,R=301]
RewriteRule ^(.*)$ http://www.site.com/folder/ [L,R=301]
Вариант №1
RewriteCond %{HTTP_HOST} ^poddomen.site.com$ [NC]
RewriteRule ^(.*)$ http://site.com%{REQUEST_URI} [R=301,NC,L,QSA]
Вариант №2
RewriteEngine on
RewriteCond %{HTTP_HOST} ^ht.site-name.com.ua$
RewriteRule ^/?$ «https\:\/\/site-name.com.ua\/» [R=301,L]
RewriteCond %{REQUEST_URI} (.*)
RewriteRule ^(.*)$ http://site.com/$1 [L,R=301]
RewriteCond %{REQUEST_URI} (.*)
RewriteRule ^(.*)$ http://site.com/ [L,R=301]
Redirect 301 «/images/fckedit/ABEL TASMAN National Park.jpg» /
site.com/page.html?ref=text → site.com/page.html
RewriteCond %{QUERY_STRING} ^ref=text$
RewriteRule ^(.*)$ /$1? [R=301,L]
site.com/page?file=text&doc=next → site.com/page?doc=next
RewriteCond %{QUERY_STRING} file=text&doc=(.*)
RewriteRule ^(.*)$ /$1?doc=%1 [L]
site.com/component/content/?information=file → на главную страницу site.com
RewriteCond %{QUERY_STRING} ^information=file $ [NC]
RewriteRule ^component/content/$ /? [R=301,L]
С site.com/index.php?idc=4&marea=6 → на главную страницу site.com
RewriteCond %{QUERY_STRING} ^idc=4&marea=6$ [NC]
RewriteRule ^index\.php$ /? [R=301,L]
С site.com/index.php?route=feed/latest_products_rss¤cy=GRN → на главную страницу site.com
RewriteCond %{QUERY_STRING} ^route=
RewriteRule ^.*$ http://site.com/? [R=301,L]
С site.com/information/information?information_id=64 → на главную страницу site.com
RewriteCond %{QUERY_STRING} information_id=64$
RewriteRule ^information/information$ /? [L,R=301]
Регулярка со всех GET параметров главной страницы, на главную без параметров
RewriteCond %{THE_REQUEST} » /\?»
RewriteRule ^ /? [R=301,L]
Регулярка с GET-параметром на главную (http://site.com/ru/news/id=16)
RewriteRule ^ru/news(/.*)?$ / [L,R=301,NC]
Регулярка с GET-параметром на главную:
http://site.com.ua/bukovel/?_utl_t=vb
http://site.com.ua/ru/bukovel/?_utl_t=vb
http://site.com.ua/en/bukovel/?_utl_t=vb
RewriteCond %{QUERY_STRING} ^_utl_t= [NC]
RewriteRule (.) $1? [R=301,L]
RewriteRule ^en(/.)?$ / [L,R=301,NC]
RewriteRule ^ru(/.*)?$ / [L,R=301,NC]
Регулярка с GET-параметром на главную
http://site.com.ua/index.php/2013-04-22-17-34-15/2013-04-23-10-31-15/9-uncategorised/144-%D1%80%D0%B0%D1%81%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5-%D1%80%D0%B5%D0%B9%D1%81%D0%BE%D0%B2-%D0%B0%D0%BB%D0%BC%D0%B0%D1%82%D1%8B-%D0%B1%D1%83%D1%80%D0%B3%D0%B0%D1%81-%D0%B1%D0%BE%D0%BB%D0%B3%D0%B0%D1%80%D0%B8%D1%8F-%D0%B0%D0%BB%D0%BC%D0%B0%D1%82%D1%8B-2013.html
RewriteCond %{REQUEST_URI} /index.php
RewriteCond %{QUERY_STRING} ^\z
RewriteRule ^(.*)$ https://site.com.ua/? [R=301,L]
1. Преобразование кириллических символов в Punycode. Пример сервиса, который может решить эту задачу: https://hb.by/punycode-converter.aspx.
2. Если не работает через Punycode, то можно сделать регулярным выражением, например:
RewriteRule ^услуги/оценка-недвижимости/оценка-квартиры/$ https://site.com/ocenka-kvartiri [R=301,L]
Надо добавлять в начало .htaccess и сохранять файл в кодировке UTF-8 без BOM.
3. Еще один вариант — поместить кириллические URL-адреса в кавычки:
Redirect 301 “оценка/жилой-недвижимости” http://site.com/
Одна из главных ошибок —проверка настроенных редиректов в браузере, когда может подтягиваться кэш, из-за которого изменения не вступают в силу. Лучше использовать специальные сервисы, их довольно много. Введите в поисковик запрос “проверка редиректов онлайн” и перейдите на первые сайты, например:
Важно: если что-то не сработало, лучше проверить с помощью нескольких сервисов. Бывают случаи, когда какой-то из сервисов сразу не отдает правильный результат.
Если у вас возникли проблемы с редиректами, внимательно прочитайте статью еще раз 🙂 Или оставляйте комментарий, а мы постараемся помочь вам в этом.
При работе над проектом на разных этапах между заказчиком и исполнителями могут возникать конфликты и…
Интернет-магазин сам по себе работать не будет! Его нужно развивать и продвигать, наращивать базу клиентов,…
Мы живем в век информационных технологий, поэтому коммерция также перешла в плоскость электронной. Теперь не…
Наверняка вы хоть раз слышали о дропшиппинге как о возможности построения бизнеса. Это отличный способ…
Никто из пользователей не становится вашим клиентом автоматически. Представим, что ваш бизнес – это самолет,…
Задача каждого сайта – максимально оперативно вызвать интерес у посетителя, чтобы запустить его в воронку…