О 301 редиректе говорилось и писалось очень много. Но тем не менее, до сих пор многие сталкиваются с проблемами при склейке зеркал с www и без него, при переходе на новый домен, изменении адреса страницы или ее переносе и так далее. Это статья позволит вам сохранить свой трафик и позиции в выдаче.
О 301 редиректе говорилось и писалось очень много. Но тем не менее, до сих пор многие сталкиваются с проблемами при склейке зеркал с www и без него, при переходе на новый домен, изменении адреса страницы или ее переносе и так далее. Это статья позволит вам сохранить свой трафик и позиции в выдаче, перенаправив его на новые страницы.
301 редирект – это код ответа сервера, сообщающий, что искомая страница или ресурсы перемещены и получили другой URL. В чем важность этого кода состояния для SEO? Благодаря ему можно исключить старый URL из поисковой выдачи и заменить его новым, при этом, не теряя позиции и вес страницы.
Существует несколько способов настройки 301 rewriterule:
Самым надежным является как раз последний вариант, поэтому как настроить редирект 301 для htaccess, разберем подробнее в нашей статье.
Прежде всего рассмотрим, что такое .htaccess. Это конфигурационный файл сервера Apache, но в отличие от главного файла конфига httpd.conf, в файле .htaccess директивы распространяются исключительно на тот каталог, в котором он размещается и на вложенные подкаталоги.
В случае, если в корне файл .htaccess отсутствует, его нужно создать, а затем загрузить на сервер через FTP-клиент.
В случае, если необходимо настроить 301 rewriterule между двумя доменами (переезд сайта с одного домена на другой), можно использовать директивы модуля mod_alias. В файле в .htaccess следует прописать директиву
Redirect permanent / https://newsite.com/
или
Redirect 301 / https://newsite.com/
Где newsite.com – это адрес нового домена.
Переадресацию можно настроить не только с одного домена на другой, но также и для страниц. Для настройки 301 редиректа страницы page1.html на другую page2.html делаем так:
Redirect 301 /page1.html https://site.ru/page2.htm
301 Редирект с главной страницы сайта на страницу каталога /top:
Redirect 301 / https://site.com/top
Rewriterule 301 с каталога /top на главную страницу сайта:
Redirect 301 /top https://site.com
Одно из основных предназначений 301 редиректа – это склейка зеркал сайта (вариантов одного сайта с одинаковым контентом, но разными адресами). Пример зеркала для сайта www.site.com – это site.com. Проблема в том, что поисковые роботы негативно относятся к зеркалами, считая их дублями, поэтому рекомендуется выбрать один основной адрес (так называемое основное зеркало), а с остальных зеркал настроить на него 301 переадресацию. Чтобы произвести склейку зеркал, используется модуль mod_rewrite.
К примеру, для того, чтобы настроить rewriterule 301 с www-домена на домен без www, то необходимо прописать следующие строки:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.myrsite.ru$ [NC]
RewriteRule ^(.*)$ http://mysite.ru/$1 [R=301,L]
Редирект 301 без www на www:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^ mysite.ru
RewriteRule (.*) http://www.myrsite.ru/$1 [R=301,L]
Редирект всех страниц сайта при переезде с http на https:
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
Еще один вариант:
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
mysite.ru – это адрес вашего сайта.
Еще одна сфера, где можно использовать 301 редирект – устранение дублей страниц на сайте.
Поисковые системы считают адреса https://www.myrsite.ru/ и https://www.myrsite.ru совершенно разными. Поэтому вам следует определить, использовать слеш или нет.
Убирается слеш в конце адреса достаточно просто – нужно в файле .htaccess прописать следующее правило:
RewriteEngine On
RewriteCond %{HTTP_HOST} (.*)
RewriteCond %{REQUEST_URI} /$ [NC]
RewriteRule ^(.*)(/)$ $1 [L,R=301]
Добавить слеш можно таким образом:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]
Для замены всех файлов с расширением .htm на файлы с расширением .html, необходимо прописать такие строки:
RewriteEngine on
RewriteBase /
RewriteRule ^(.*)\.htm$ $1.html [R=permanent]
Важно: при прописывании сразу нескольких директив, строку «RewriteEngine on» нужно указывать ТОЛЬКО один раз – она «включает» модуль mod_rewrite.
В том случае, если файла .htaccess нет и он создается с нуля, то все команды следует указывать внутри следующих строк:
<IfModule mod_rewrite.c>
…
</IfModule>
Например, вот так
Способ настройки rewriterule 301 в .htaccess работает только для веб-серверов Apache. Для серверов IIS настройка переадресации производится в XML-файле web.config, где находятся все основные настройки сервера.
Для настройки переадресации с одной веб-страницы на другую, в файле web.config необходимо изменить следующий сегмент кода:
<?xml version=”1.0″ encoding=”UTF-8″?>
<configuration>
<location path=”test.html”>
<system.webServer>
<httpRedirect enabled=”true” destination=”http://mysite.ru/page2.html” httpResponseStatus=”Permanent” />
</system.webServer>
</location>
</configuration>
Где mysite.ru/page.html – одна страница, а mysite.ru/page2.html – другая.
Редирект 301 с www на домен без www настраивается так:
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=”Imported Rule 1″ stopProcessing=”true”>
<match url=”^(.*)$” ignoreCase=”false” />
<conditions logicalGrouping=”MatchAll”>
<add input=”{HTTP_HOST}” pattern=”^www\.(.+)$” />
</conditions>
<action type=”Redirect” url=”http://{C:1}/{R:1}” redirectType=”Permanent” />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Если из-за каких то ограничений на хостинге у вас нет возможности создать или отредактировать конфигурационные файлы, rewriterule 301 можно настроить посредством PHP
<?php
header(‘HTTP/1.1 301 Moved Permanently’);
header(‘Location: https://newsite.ru/’);
?>
Таким образом, переадресация ответа 301 происходит принудительным образом, направляя пользователя на новую страницу https://newsite.ru/.
Для небольших сайтов на две-пять страниц, 301 перенаправление легко настроить даже с помощью HTML:
<meta http-equiv=”refresh” content=”0; url=https://newsite.ru”>
При изменении 0 вы указываете время (в секундах) на переадресацию, но при этом реализация rewriterule 301 происходит со стороны клиента, а не сервера (без передачи заголовка 301).
JavaScript также позволяет настроить rewriterule 301 без передачи заголовка 301
<script type=”text/javascript”>
window.location.replace(“newsite.ru”);
</script>
Этот способ не сработает, если у клиент отключена поддержка JavaScript.
В самом «ленивом» случае можно воспользоваться одним из многочисленных онлайн-сервисов – генераторов 301 redirect, выдающего по запросу уже готовые фрагменты кода. Все, что вам остается – просто указать с какой и на какую страницу или адрес будет происходить перенаправление пользователя.
Все описанные выше способы работают, если у вас есть опыт в программировании. Но если его нет? Тогда рекомендует обратиться к программисту, воспользоваться услугами веб-форвадинга от самого хостинг-провайдера или использовать для настройки встроенные инструменты самой CMS.
Если у вас сайт на WordPress, то можно использовать один из плагинов:
Наиболее эффективный способ настройки переадресации – 301 редирект в htaccess. Но этот способ работает только в том случае, если вы используете веб-сервер Apache. Для серверов IIS придется настраивать файл web.config, а если еще и нужно соблюдать определенные условия, то лучше использовать редирект 301 php, но этот способ требует навыков программирования.
Хотите, чтобы на вашем сайте была правильная настройка переадресации без потери веса страницы? Обращайтесь к нам и мы готовы оптимизировать работу вашего сайта в рамках комплексного продвижения.
Закажите у нас экспресс-аудит.
Вас это ни к чему не обязывает.
Если вы уже знаете, что вашему бизнесу нужно продвижение в интернете:
Мы сделаем все, чтобы вы получили желаемое:
Наше агентство последовательно и аккуратно во всем:
Вы получаете персонального консультанта, который будет вести ваш проект . Он готов ответить на все ваши вопросы, поможет разобраться в деталях. Мы располагаем достаточным количеством специалистов, чтобы ваш сайт продвигался максимально быстро.
Чтобы обеспечить нужный результат, а также уверенность нашего клиента, что все под контролем, наше агентство просто следует принципам:
Вы получаете результат от нашей работы в виде роста и развития вашего бизнеса .
Мы готовы отвечать финансово и юридически за свою работу, потому что знаем, что предлагаем вам лучшие решения, уверены в их результатах.
Мы используем cookie, чтобы улучшить работу сайта и повысить его эффективность.
Вы соглашаетесь с использованием куки-файлов, продолжая пользоваться сайтом.
Для получения необходимо быть авторизованным на сайте vk.com