301 редирект - постоянный редирект, т.е. 301 редирект указывает на то, что страница перемещена на новый адрес, а старый URL считать устаревшим, такой редирект передает около 90-99% ссылочного веса страницы.
Далее будут описаны несколько советов и примеры 301-го редиректа с помощью файла .htaccess (кодер.укр)
- советы по использованию приведены ...
- и что имеем - 301 редирект: с одной страницы на другую / с www на домен без www / с домена без www на домен с www / со страниц со слешем на страницы без слеша в конце URL / со страниц без слеша на страницы со слешем в конце URL / со всех страниц одного домена на главную страницу другого домена / с каждой страницы одного домена на такой же URL адрес другого домена / с протокола http на протокол https / с протокола https на http / удаляем несколько слешей подряд в URL / удаляем подряд несколько тире (дефисов) / вырезать из URL index.php // + несколько примеров совмещения 2-х редиректов в один // + комментарии
Это чтобы один из сайтов, с или без www, был главным (например, для сайта ***.**, являющимся главным, при заходе по адресу www.***.**, автоматически перебросит на ***.**)
Короткая предыстория вопроса (joomla-school.com) ... и порядок действий:
- - с использованием файла .htaccess
- в файле .htaccess, ищем в нем строчку:
- 1.RewriteEngine On
- а также
- 1.Options +FollowSymLinks
- Если они закомментированы (спереди стоит значок #), то разкомментировать их, ппотом сразу после RewriteEngine On добавитье вот такие строчки:
- 1. RewriteCond %{HTTP_HOST} ^www\.site\.ru
2. RewriteRule ^(.*)$ http://site.ru/$1 [R=permanent,L] - где site.ru - имя вашего домена
- Не забывать про обратную наклонную черту перед точкой (.) в строке RewriteCond - она обязательна.
Можно также ознакомиться и с другими вариантами 301 редиректа на /где-то еще/. При 301 редиректе Google должен объединять PR сайтов. Теперь сайт будет доступен и по доменному с www, так и без www, но в адресной строке будет перебрасывать на то имя, на которое настроили редирект. Этот способ называется "перенаправление с шаблоном". - Важно: добавляйте строчки сразу после RewriteEngine On. У меня, например, переадресация отказывалась работать, если между ними была пустая строка.У меня данный код выглядит вот так:
- 1. Options +FollowSymLinks
2. RewriteEngine On
3. RewriteCond %{HTTP_HOST} ^www\.joomla-school\.com$ [NC]
4. RewriteRule ^(.*)$ http://joomla-school.com/$1 [R=301,L] - То есть, у меня все ссылки с приставкой www перенаправляются на ссылки без www.Если же вы хотите, чтобы перенаправление действовало в обратном направлении ( с без www в ссылки с www, то добавьте вот такой код:
- 1. RewriteCond %{HTTP_HOST} ^site\.ru
2. RewriteRule ^(.*)$ http://www.site.ru/$1 [R=permanent,L]где site.ru - имя вашего домена - --- мое, на основе wedal.ru )
- --- из файла .htaccess, без всяких там \ и отсутствием пробелов
- RewriteEngine On
## Begin - Custom redirects
#
# If you need to redirect some pages, or set a canonical non-www to
# www redirect (or vice versa), place that code here. Ensure those
# redirects use the correct RewriteRule syntax and the [R=301,L] flags.
#
## End - Custom redirects
RewriteCond %{HTTP_HOST} ^www.my-rubbish.com
RewriteRule ^(.*)$ http://my-rubbish.com/$1 [R=301,L] - мое ---
- - с использованием плагина www Redirect -
- * Для Яндекса дополнительно надо определить какое зеркало сайта является главным, с помощью директивы 'Host' в файле robots.txt
- Код добавляемый в robots.txt должен выглядеть следующим образом:
- 1. User-agent: Yandex
2. Disallow:
3. Host: joomla-school.com - Лучше будет вынести директиву 'Host' в отдельную секцию, предназначенную только для робота Яндекса (User-agent: Yandex), т.к. возможно, что другие поисковики (Google, например) могут некорректно отработать непонятную им директиву. Так же по стандартам файла robots.txt в каждой секции 'User-agent' должна присутствовать хотя бы одна директива 'Disallow', поэтому мы и поставили в коде пустую, ничего не запрещающую директиву Disallow:. Мой файл robots.txt, после добавления приведенного выше кода, стал выглядеть так:
- 1. User-agent: *
2. Disallow:
3.
4. User-agent: Yandex
5. Disallow:
6. Host: joomla-school.com
Еще о редиректах (не Joomla): Редирект и Файл htaccess ...
*