301 редирект: что это, для чего используют, как сделать и проверить

Содержание:

Примеры использования 301 редиректа

Редирект с index.php на главную

Чтобы настроить его вам нужно прописать в вашем файле следующий код, который будет перенаправлять посетителей с адреса site.ru/index.php на site.ru:

RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.php\ HTTP
RewriteRule ^index\.php$ http://site.ru/ 

Если вам так же нужно сделать переадресацию с index.html, то просто в коде выше замените .php на .html

Склеиваем алиасы сайта

Если у вас несколько доменов и вы хотите все их перенаправлять на основной сайт, то используем:

RewriteCond %{HTTP_HOST} ^vash-sait.com$ 
RewriteCond %{HTTP_HOST} ^www.vash-sait.com$ 
RewriteCond %{REQUEST_URI} !^/robots.*
RewriteRule ^(.*)$ http://vash-sait.ru/$1 

Обратите внимание на первые 2 строки, там указано зеркало в зоне .com, если у вас иная или несколько зон, то добавляем правила

Редирект с www на без www

Этот способ я уже описывал ранее, но повторюсь. Для того, чтобы склеить зеркала и выбрать основным домен без www прописываем:

RewriteCond %{HTTP_HOST} ^www.site\.ru$ 
RewriteRule ^(.*)$ http://site.ru/$1 

Редирект с домена без www на домен с www

Это действие противоположное предыдущему, только основное зеркало здесь www.site.ru:

RewriteCond %{HTTP_HOST} ^site\.ru$ 
RewriteRule ^(.*)$ http://www.site.ru/$1 

301 редирект страниц со слэшем и без

Это еще один вид дублей, тут мы склеим страницы site.ru/category/ и site.ru/category, как видите, в конце второго урла не стоит слэша:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 

Если вам нужно наоборот оставить слэш в конце урла, то вам нужен данный вариант:

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ $1/ 

Если у вас по какой-то причине появились урлы типа site.ru/category//article.html, то юзаем код:

RewriteCond %{REQUEST_URI} ^(.*)//(.*)$
RewriteRule . %1/%2 

где, «//» можно заменить на «—» или любые сдвоенные символы в урле.

Массовая замена категории

Бывает, что вы переименовали категорию, а за ней закреплены тысячи урлов. Чтобы не состарится во время написания тысяч одинаковых перенаправлений юзаем:

RewriteRule ^(.*)/old-category/(.*)$ $1/new-category/$2 

Если у вас категория идет сразу после домена (типа site.ru/category/), то используем другой вариант:

RewriteRule old-category /(.*) / old-category /$1 

Редирект на новую страницу

Самый простой редирект со страницы на страницу, для это просто пропишите так:

Redirect 301 /old-post.html http://new-site.ru/new-post.html

Где old-post.html — это ваша старая страница, а new-site.ru/new-post.html — это новая страница и она может быть на любом домене (включая ваш текущий домен).

Редирект для url с параметрами

Страницы с параметрами редиректятся сложнее, возьмем пример http://site.ru/page.php?sort=articles. Параметр здесь «sort=articles». Код будет следующим:

RewriteCond %{QUERY_STRING} sort=articles
RewriteRule .* http://site.ru/page.php? 

Работаем с расширениями

Убираем .html из url (для удаления .php не забудьте заменить $1.html на $1.php):

RewriteRule ^((+/)*+)$ /$1.html 

Меняем .php на .html в урлах и наоборот (не забываем поменять местами в коде):

RedirectMatch 301 (.*)\.php$ http://www.site.com$1.html

Как настроить 301 редирект

Использование системных файлов

Одним из самых надежных способов конфигурации считается использование системных файлов, создаваемых в корне сайта. Поисковые системы работают просто: при индексации страницы они автоматически ищут определенные ключевые слова, выполняя указанные команды. Таким же образом работает перенаправление.
Чтобы организовать 301 редирект страницы, необходимо использовать файл с названием htaccess. Создайте его и добавьте в корень сайта. Напишите в нем следующий код:

RewriteEngine On

RewriteCond %{HTTP_HOST} original.bla

RewriteRule (.*) http://new.bla/$1

Где original.bla и new.bla ― старый и новый адрес страницы соответственно. Таким же образом стоит проводить 301 редирект на https. Можно использовать и сокращенную версию, но подобный код непонятен. В сокращенной легко запутаться даже профессионалу.
Как сделать редирект 301 при помощи хостинга
Еще один способ того, как сделать 301 редирект, ― это воспользоваться встроенным инструментарием используемого хостинга.

Для этого необходимо зайти в панель управления, найти вкладку с настройками хостинга. Измените тип хостинга на «Перенаправление» или просто добавьте такую возможность ― это зависит от типа используемого инструментария. В нужные поля введите старый и новый адрес.

Таким образом можно легко организовать 301 редирект на www.

Обеспечиваем безопасность сайта

Файл .htaccess предоставляет большие возможности для защиты сайта от вредоносных скриптов, кражи контента, DOS-атак. Также можно защитить доступ к определенным файлам и разделам.

5. Запрещаем загрузку картинок с вашего сайта

Существуют технологии, при которых сторонние сайты используют контент, в том числе изображения, загружая его прямо с вашего хостинга путем хотлинков (прямых ссылок на файлы). Это не только обидно и нарушает авторские права, но и создает ненужную дополнительную нагрузку на ваш сервер.

Осадите воришек при помощи этого кода:

Заменяете «mysite.com» на адрес вашего сайта и создаете изображение с любым сообщением о том, что красть чужие картинки нехорошо, по адресу . Это изображение и будет показано на стороннем ресурсе.

6. Запрещаем доступ

Целым группам нежелательных гостей с определенных IP-адресов, подсетей, а также вредоносным ботам можно запретить доступ на ваш ресурс при помощи следующих директив в .htaccess.

Для нежелательных User Agents (ботов)

Список юзер-агентов можно дополнять, сокращать или создать свой. Перечень хороших и плохих ботов можно посмотреть здесь.

Частный случай такого запрета — запрет для поисковых роботов. Если вас почему-то не устраивает правило в robots.txt, можно запретить доступ, например, роботу Google при помощи таких директив:

Для подсети

Вписываем маску сети в строку после «deny from».

Спамные IP-адреса можно вычислить в логах сервера или с помощью сервисов статистики. В административной панели WordPress отображаются IP-адреса комментаторов:

К определенному файлу

Вписываем название файла вместо «myfile.html» в примере. Пользователю будет показана ошибка 403 — «доступ запрещен».

Не лишним будет ограничить доступ к самому файлу .htaccess из соображений безопасности, а также рекомендуем после настройки всех правил поставить на файл права доступа 444.

Для сайтов на WordPress важно ограничить доступ к файлу wp-config.php, т.к. в нем содержится информация о базе данных:

Для пользователей, пришедших с определенного сайта

Вы можете заблокировать посетителей с нежелательных ресурсов (например, со взрослым или шокирующим контентом).

7. Защищаем доступ к определенному файлу или папке

Для начала создайте файл .htpasswd, пропишите в нем логины и пароли в формате user:password и разместите в корне сайта. В целях безопасности пароли лучше зашифровать. Это можно сделать при помощи специальных сервисов генерации записей, например, такого. Следующим шагом добавьте директории или файлы в .htaccess:

Защита паролем папки

Вместо «/pub/home/.htpasswd» укажите путь до файла .htpasswd от корня сервера. Рекомендуем проверить доступ после установки кода.

8. Запрещаем выполнение вредоносных скриптов

Следующая группа директив защищает сайт от так называемых «скриптовых инъекций» — инструмента хакерских атак:

Все попытки причинить вред вашему ресурсу будут перенаправлены на страницу ошибки 403 «доступ запрещен».

9. Защищаем сайт от DOS-атак

Один из способов защиты — ограничить максимально допустимый размер запроса (ограничение отсутствует по умолчанию).

Для этого прописываем в .htaccess размер загружаемых файлов в байтах:

В примере указан размер 10 Мбайт. Если вы хотите запретить загрузку файлов, пропишите число меньше 1 Мбайт (1048576 байт).

Также можно изучить возможности директив LimitRequestFields, LimitRequestFieldSize и LimitRequestLine в официальной документации.

WordPress: редирект на другой сайт в .htaccess

.htaccess — конфигурационный файл для веб-сервера Apache (используются на хостинге REG.RU). Файл .htaccess располагается в корневой папке сайта. С помощью него можно:

Обратите внимание!

Редактируйте файл внимательно. Некорректные команды или кодировка могут привести к проблемам в работе всего сайта.

  1. 1.
    Откройте корневую папку сайта. Ее расположение вы можете определить .
  2. 2.

    Откройте файл .htaccess:

  3. 3.

    Добавьте код:

    old_site.ru замените на исходный адрес, new_site.ru — на целевой, который должен открываться вместо исходного.

    WP redirect в .htaccess

  4. 4.
    Нажмите Сохранить → ОК.

Готово! Теперь при переходе на любую страницу исходного сайта пользователи будут попадать на новый.
Если вас интересуют другие разновидности редиректов (например, перенаправление с домена с/без www, отдельных страниц, переадресация с HTTP на HTTPS,), воспользуйтесь .

Мы рассмотрели настройку редиректов с помощью плагина и конфигурационного файла. Не забывайте о перенаправлениях при любых значимых действиях с URL-адресами вашего сайта. Если не сделать этого, вы потеряете посетителей сайта и позицию в поисковой выдаче.

Кроме непосредственной настройки редиректов, мы рекомендуем пользоваться Яндекс.Вебмастер и Google Search Console. Эти инструменты предназначены для того, чтобы работать с поисковыми системами и отслеживать основные SEO-показатели сайта.

Основные способы настройки редиректов

Например в 1C-Битрикс существует множество модулей, таких как . 

Для других CMS также можно установить модули. Вот некоторые ссылки на модули для распространенных CMS: , , . 

Настройка через указание отдельного условия в PHP-скрипте. Таким образом, обращаясь к корневому файлу php браузер получает команду открыть новую страницу вместо старой.

Например:  

header(‘HTTP/1.1 301 Moved Permanently’);  

header(‘Location: http://www.example.com/’); 

Если необходимо перенаправить одну единственную страницу на сайте, одним из решений может быть настройка при помощи HTML путем добавления специального тега в заголовок HTML-документа (Meta Refresh). 

Например,

JavaScript – операция осуществляется непосредственно через браузер и является наиболее медленным способом. Используется, если необходим редирект с задержкой. Минусом является то, что такой редирект не будет работать, если JavaScript отключен в браузере. И не будет учтен Яндексом. 

Например, window.location.href=»https://site.com» 

Настройка 301 редиректа на nginx. Настройки необходимо вносить в файлах конфигураций виртуальных доменов. 

Например, rewrite ^https://$host$request_uri? ; 

где: 

$host – имя хоста из запроса, если отсутствует – имя в поле «Host» заголовка, если тоже отсутствует – имя сервера;  

$request_uri – первоначальный запрос с аргументами (все, что идет после доменного имени). 

могут иметь следующие параметры: 

permanent – перенаправление с кодом 301,

redirect – перенаправить с кодом 302,

last – закончить обработку с переходом в новый location,

break – закончить обработку и остаться в текущем location. 

Для настройки переадресаций на сервере Apache более надежной является настройка серверных редиректов через внесение изменений в файл .htaccess. Разберем этот способ подробнее.   

Как переехать на новый домен? Оптимальная стратегия 301 редиректа

Оптимальной стратегией переезда на новый домен, учитывая пожелания 2-ух основных поисковых систем рунета Яндекс и Google, это:

  • постраничный 301 редирект со старого сайта на новый.
  • при этом для файла robots.txt редирект не делаем, а прописываем в нем директиву Host на новый домен.

Тогда код для настройки редиректа на старом сайте может иметь следующий вид:

а файл robots.txt для старого сайта:

Генерация 301 редиректов

Если вы не очень технически подкованы, то можно воспользоваться сервисами генерации базовых редиректов:

На таких сервисах можно только подставлять собственные данные и сразу получать готовый код для редиректов между доменами, директориями или урлами.

Как проверить 301 редирект

После каждого изменение логики работы 301 редиректа необходимо проверять работоспособность сайта:

Также для более тщательной проверки отработки редиректов можно использовать следующие сервисы:

 — максимально подробная информация по ответам сервера.

.

Как и когда лучше использовать 301 редирект vs Canonical

301 — Эй, Поисковики: моя страница уже не здесь, и она навсегда переехала на новую страницу. Пожалуйста, удалите старую страницу из индекса и передайте её вес на новую страницу.

Canonical — Эй, Поисковики (так для большинства поисковых систем): у меня есть несколько версий этой страницы (или содержания), пожалуйста, индексируйте только ту версию страницы, на которую стоит canonical. Я буду держать другие страницы доступными для людей, чтобы они могли их видеть, но, Поисковик, не включай их в свой индекс и пожалуйста, передай вес на мою предпочтительную страницу.

Простой 301 редирект в .htaccess

Если ваш сервер (или хостинг) использует apache, переадресацию можно выполнить, через файл. htaccess. Этот способ, по-моему, самый простой и удобный из всех мною виденных

Важно! Не забудьте включить модули mod_alias (для поддержки правил Redirect, RedirectPermanent и RedirectMatch) и mod_rewrite в php.ini

1. Простая переадресация со старых страниц на новые:

Единственным минусом является потребность вносить все изменения вручную, то есть каждый адрес прописывается непосредственно программистом.

2. 301 редирект в .htaccess для русскоязычных ссылок

Единственная разница, которая заняла у меня кучу времени, это потребность в точности сохранения документа в формате uft-8 без БОМ, что является очень важным моментом. Если вы сохраните в другом формате, вероятнее всего ваше перенаправление работать не будет.

В остальном все также:

3. Редирект с помощью RedirectMatch

Похожий способ редиректа, который описан выше за исключением того, что в этом случае можно указывать перенаправление, если вы перевели сайт с движка на php на aspx.

4. Перенаправление домена с www на не-www

еще вариант в более простом виде:

5. Редирект запросов без www на с-www

так же решает аналогичную задачу:

6. Редирект ссылок со слешем на без для всего сайта

7. 301 редирект как в пункте 6, только наоборот

8. Убираем слэш в конце главной ссылки если она без www

9. Убираем слэш в конце главное ссылки, если она с www

10. Убираем с помощью правильного перенаправления /index.php (без GET)

11. 301 редирект для всех адресов где есть index.php

12. Делаем переадресацию с динамического url на статический

вариант с GET

вариант без GET

13. Делаем переадресацию всех страниц домена на один url другого домена

14. Редиректы для SSL (перенаправление с http на https и наоборот)

Как сделать редирект URL-адресов с помощью mod_rewrite Apache

Более функциональный способ редиректа с помощью Apache — использовать его переписывающий модуль mod_rewrite. Вот несколько примеров, которые можно добавить в .htaccess или в файл конфигурации Apache.

Пример 1: Редирект с www на без www

Этот код редиректа HTML перенаправляет все www-версии URL-адресов на их эквивалентные версии без www.

<IfModule mod_rewrite.c>
	RewriteCond %{HTTP_HOST} ^www.example.com$ 
	RewriteRule (.*) http://example.com/$1 
</IfModule>

Это называется канонизацией. Вот несколько примечаний о регулярном выражении, используемом в этом примере:

  • ^ — обозначает начало запрошенного URI;
  • . — буквально соответствует точке;
  • $ — обозначает конец запрошенного URI;
  • — делает шаблон нечувствительным к регистру;
  • (.*) — соответствует любому символу (или отсутствию символов);
  • $1 — соответствует шаблону из круглых скобок (.*) в RewriteRule;
  • — отправляет код состояния 301 и инструктирует Apache прекратить обработку набора правил.

Пример 2: Редирект всего домена

Чтобы осуществить редирект HTML с текущего домена на новый:

<IfModule mod_rewrite.c>
	RewriteRule ^/(.*) https://new-domain.tld/$1 
</IfModule>

Аналогично можно перенаправить запросы из поддомена текущего сайта на поддомен на новом сайте:

<IfModule mod_rewrite.c>
	RewriteCond %{HTTP_HOST} (.*).old-domain.tld 
	RewriteRule ^/(.*) https://%1.new-domain.tld/$1 
</IfModule>

Вот несколько примечаний о регулярном выражении, используемом в этом примере:

  • ^ — обозначает начало запрошенного URI;
  • (.*) — соответствует любому символу (или отсутствию символов);
  • $1 — соответствует шаблону из круглых скобок (.*) в RewriteRule;
  • %1 — соответствует первому шаблону из круглых скобок (.*) в RewriteCond
  • — отправляет код состояния 301 и инструктирует Apache прекратить обработку набора правил.

Обратите внимание: чтобы любой из этих методов работал корректно, оба домена должны иметь одинаковую структуру файлов. Папки и ресурсы на текущем домене также должны существовать и на новом домене

В противном случае вы получите на новом домене кучу ошибок 404.

Пример 3: Перенаправление всех файлов HTML и PHP

Вот еще один, более сложный пример скрипта редиректа HTML mod_rewrite:

<IfModule mod_rewrite.c>
	RewriteCond %{REQUEST_URI} ^/old-directory/(.*).(html|php)$ 
	RewriteRule (.*) http://example.com/new-directory/%1.%2 
</IfModule>

Мы перенаправляем все запросы к любым файлам HTML или PHP, расположенным в папке /old-directory/. Все соответствующие запросы перенаправляются в тот же файл, который находится в /new-directory/. Вот несколько примечаний о регулярном выражении, используемом в этом примере:

  • ^ — обозначает начало запрошенного URI;
  • (.*) — соответствует любому символу (или отсутствию символов);
  • . — буквально соответствует точке;
  • (html php) — соответствует либо html, либо php;
  • — делает шаблон нечувствительным к регистру;
  • %1 — соответствует первому шаблону из круглых скобок (. *) в RewriteCond;
  • %2 — соответствует второму шаблону из круглых скобок (html|php) в RewriteCond;
  • — отправляет код состояния 301 и инструктирует Apache прекратить обработку набора правил.

Ошибки при использовании редиректов

  • Любой многошаговый редирект. Если есть возможность, то желательно не допускать многошаговых редиректов, чтобы он и быстрее сработал, и передалось максимум ссылочного веса.
  • Использование неправильного типа редиректов. При выборе типа редиректа необходимо учитывать нюансы каждого из них.
  • Внедрение внутренних редиректов без смены ссылок на новые адреса. После внедрения всех редиректов у себя на сайте, необходимо проверить, чтобы каждая страница вашего сайта уже ссылалась на новую и внутри сайта у вас не было ссылок на страницы, с которых происходит редирект.
  • Редирект на нерелевантные страницы/контент. Редирект всегда желательно проставлять на максимально релевантную страницу: или на похожую страницу, или на ветку каталога/раздела, к которому принадлежала данная страница.
  • Неправильный выбор использования rel=canonical vs 301 редирект.
  • Редирект, конечной точкой которого является не 200-я страница. Редирект должен вести на правильно работающую страницу с 200 ответом сервера. Иначе, желательно не сбивать поисковых роботов и отдавать 404 ответ.
  • Редирект robots.txt. Так как, например, нужно прописывать директиву Host для Яндекса при склейке доменов.

Надеемся, что данное руководство станет вам шпаргалкой и помощником для использования 301-го редиректа для вашего сайта.

Создание постоянной переадресации 301 через настройки и плагины CMS

В большинстве популярных конструкторов сайтов и CMS (OpenCart, Joomla!, Битрикс, Wix, Тильда) предусмотрена настройка редиректов с помощью встроенных инструментов. Если сайт создан с помощью WordPress, для настройки переадресации можно воспользоваться следующими плагинами:

  • Redirection — самый популярный плагин для настройки редиректов. Кроме основной функции обладает следующими возможностями: сбором статистики переадресаций, отслеживанием ошибок 404, поддержкой регулярных выражений.

  • Safe Redirect Manager — простой плагин, который также поддерживает регулярные выражения, практически не влияет на производительность сайта.

  • Quick Page/Post Redirect Plugin — еще один удобный инструмент оптимизации. Один из недостатков — отсутствие поддержки регулярных выражений. К ссылкам можно добавлять атрибут «nofollow».

  • Simple 301 Redirects. Данный модуль обладает одним недостатком – url для переадресации необходимо прописывать вручную.

Настроить Permanent Redirect 301 в Вордпресс можно и через редактирование файла .htaccess в разделе управления хостингом. Чтобы подключиться к нему, потребуется использовать FTP-клиент. Сама кодировка производится по общим правилам настройки переадресации в .htaccess.

Чтобы настроить 301 редирект в CMS OpenCart в файле .htaccess необходимо прописать:

RewriteCond %{QUERY_STRING} ^_route_=адрес_старой_страницы.html$

RewriteRule ^(.*)$ http://ваш_домен.ru/новой_страницы/? 

Для Битрикс кодировка будет выглядеть следующим образом:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.sng-it.ru$ 

RewriteRule ^(.*)$ http://sng-it.ru/$1 

В Joomla настройки переадресации производятся через панель администратора в разделе «Компоненты» => «Перенаправление». Здесь можно не только установить правила редиректа, но и отслеживать страницы с битыми ссылками и перенаправлять их на корректные адреса.

С конструкторами сайтов все не так однозначно. Например, один из наиболее популярных CMS-конструкторов WIX не предоставляет возможности создания файла .htaccess.

Но настроить редирект 301 довольно просто в базовом редакторе.

Как это работает?

Попробуем разобраться, как работает эта конфигурация htaccess редиректа http на https. Это поможет внести необходимые изменения:

RewriteEngine On

Первая строка позволяет Apache запустить механизм преобразования http-ссылок, необходимый для выполнения перенаправления:

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} !^www. 

Эти две строки — условия перенаправления, они используются для определения того, должен ли запрос быть перенаправлен. Если любое из этих двух условий возвратит true, то Apache выполнит перенаправление, поскольку условия соединяются с помощью .

Первое условие определяет, использует ли запрос URL не-HTTPS. Второе условие определяет, использует ли запрос URL www. Заметьте, я использовал www.а не www., потому что образец является регулярным выражением и точка здесь используется для экранирования. Следовательно, ее нужно оставить:

RewriteCond %{HTTP_HOST} ^(?:www.)?(.+)$ 

Четвертая строка — она соответствует имени хоста входящего запроса, и разделяет его на www часть (если таковая имеется), и остальную часть имени хоста. Мы будем ссылаться на нее позже с помощью %1 в RewriteRule.

Если вы знаете имя хоста заранее, то можно улучшить правило редиректа с http на https, встроив URL и пропустив это условие (пример ниже):

RewriteRule ^ https://www.%1%{REQUEST_URI} 

RewriteRule – центральный элемент перенаправления. С помощью этой строки мы предписываем Apache перенаправить любой запрос на новый URL, который состоит из:

  • https: // WWW;
  • %1: Ссылка на без-WWW часть хоста;
  • %{REQUEST_URL}: URL-запрос, без имени хоста.

Все эти маркеры соединены друг с другом, и представляют собой конечный URL перенаправления. В конце мы добавляем три флага:

  • NE — чтобы не выйти из специальных символов;
  • R=301 — использовать HTTP статус 301 редиректа;
  • L — прекратить обработку других правил, и немедленно перенаправить.

Пример файла .htaccess

Ниже мы приводим пример «боевого» файла .htaccess c комментариями. Комментарии не отображаются в основном коде и используются для пояснений. Чтобы добавить комментарий, поставьте перед строкой шарп (#).

# Закрыт доступ к просмотру листинга (списка директорий) сайта:

# Задана пользовательская страница для ошибки 404:

# Настройка параметров php для версии 7.x:

# Настройка ЧПУ для 1С-Битрикс:

# Указание индексного файла:

# Включение модуля mod_expires и выставление настроек времени кэширования статических файлов:

Итак, мы рассмотрели создание .htaccess (Windows), а также часто используемые директивы, которые нужны для управления сайтом. По инструкциям вы сможете выставить нужные настройки.

Самый простой пример редиректа: с сайта на сайт

Redirect / www.example.com

www.example.com — сайт, на который мы перенаправляем запрос пользователя.

Redirect /semantica semantica.in/

Redirect /semantica/blog semantica.in/blog

Redirect 301 /kernel semantica.in/

Что всё это значит:

1 строка — при обращении к странице www.example.com/semantica будет открываться сайт semantica.in/

2 строка — при обращении к http://www.example.com/semantica/blog будет открываться semantica.in/blog

3 строка — веб-сервер будет отдавать код 301 о постоянном переезде на новый URL

Теперь, когда вы примерно понимаете, как это работает, можно переходить на задачи посложнее.

Что такое файл .htaccess

.htaccess — это дополнительный конфигурационный (служебный) файл, с помощью которого можно управлять настройками сервера. Он применяется в том случае, если хостинг-провайдер использует программное обеспечение Apache.

Файл .htaccess будет полезен, если ваш сайт размещен на виртуальном хостинге. На нём несколько пользователей делят ресурсы одного сервера. Общие настройки для управления этим сервером закрыты от клиентов, чтобы у них не было возможности влиять на другие сайты. При этом пользователи могут управлять настройками сервера только в рамках своего сайта через создание .htaccess.

Зачем нужен .htaccess

В файле .htaccess можно задать некоторые серверные настройки Apache для конкретного сайта или отдельной папки. Например:

Таким образом, .htaccess позволяет гибко настраивать отдельные сайты без изменения общих параметров сервера. Также этот конфигурационный файл можно передавать внештатным SEO-специалистам: они получат доступ к настройками именно SEO-оптимизации без возможности менять настройки на сайте или хостинге.

Ниже рассмотрим, как создать файл .htaccess на своем компьютере и загрузить его на хостинг.

Как настроить редирект

Как сделать 301 редирект и другие перенаправления? Выбор способа настройки редиректа зависит от ваших целей и опыта. Перед настройкой определите цель редиректа (перевод всего сайта на новый адрес, редирект со страницы на страницу или другое). После этого выберите, как вы будете работать — через панель управления хостингом или в коде

Также обратите внимание, на какой операционной системе работает ваш хостинг (Linux или Windows). После этого используйте подходящую для вашего случая инструкцию

Через панель управления хостингом

Варианты настройки через панель управления хостингом ISPmanager, cPanel и Plesk подойдут вам, если вы являетесь клиентом REG.RU.

Также вы можете .

Через код сайта

Если вы хотите настроить редирект вручную через код, используйте инструкции ниже.

Итак, редирект — это простыми словами перенаправление на другую страницу. С помощью наших инструкций вы сможете настроить переадресацию для нужного сайта или страницы.

Примеры использования редиректов

Ни один из описанных выше редиректов не является типичным для SEO. Однако это не означает, что оптимизаторы не будут использовать перенаправления в своих стратегиях. Итак, ниже вы найдете некоторые из наиболее распространенных вариантов, когда SEO-специалисты реализуют или, по крайней мере, активно участвуют в настройке переадресации.

Перезапуск нового сайта / переезд сайтов

Если вы ранее переносили сайт, то знаете, насколько сложным может быть этот процесс как с технической точки зрения, так и с точки зрения SEO. Многое может пойти не так, и вы рискуете потерять рейтинг, трафик и конверсию. 

Настройка правильных редиректов помогает гарантировать, что ничего из вышеперечисленного не произойдет, потому что Google может индексировать новый сайт, понимать взаимосвязь между старым и новым контентом и передавать ссылочный вес от первого ко второму. 

Наиболее распространенные сценарии использования редиректов при переезде сайта включают:

  • Перевод сайта на SSL и перенос URL-адресов с HTTP на HTTPS.
  • Перенос старого отдельного мобильного сайта на адаптивные страницы.
  • Переезд на новый домен. 
  • Обновление и переработка архитектуры сайта.
  • Изменение URL-структуры разделов на сайте. 
  • Замена старых страниц новыми материалами и т. д.

Наиболее распространенными типами редиректов, используемыми в этих сценариях, являются 301 постоянный и 302 временный, в зависимости от характера перенаправления.

Перенаправления по геолокации

Многие международные организации хотят отображать релевантный для пользователей из разных стран контент. В таких случаях редиректы по геолокации помогает автоматически показывать пользователям соответствующий контент в зависимости от их местоположения и/или языковых настроек. 

Однако при использовании перенаправления по геолокации следует помнить о нескольких вещах. Прежде всего, Google советует не выполнять редирект на основе IP-адреса пользователя. Это также может сбить с толку его поисковых роботов и вызвать проблемы с индексированием контента. Вместо этого поисковая система рекомендует использовать настройки ccTLD и Google Search Console для таргетинга на международных пользователей. 

В этом случае наиболее распространенным типом перенаправления является временный 302 редирект. Сайт также может динамически обслуживать нужный контент. 

Таргетинг на устройства

Обычный редирект на сайтах с мобильной версией на поддомене. Перенаправление определяет тип устройства, которое человек использует для доступа к сайту, и перенаправляет его на соответствующую версию, мобильную или десктопную. 

Google рекомендует две реализации этого перенаправления – HTTP и JavaScript. 

Переадресация для кампаний PPC / партнерского маркетинга

В некоторых кампаниях PPC или партнерского маркетинга маркетологи предпочитают указывать перенаправления на исходную целевую страницу, а не использовать прямой URL. В случае партнерского маркетинга он может генерировать множество ссылок на URL-адрес в интернете. Однако из-за характера партнерского соглашения Google может воспринимать эти ссылки как купленные и наказывать сайт за несоблюдение рекомендаций для вебмастеров. 

Временное перенаправление без возможности кэширования помогает защитить сайт от санкций, в то же время позволяя трафику поступать на целевой URL. 

Перенаправления для A/B-тестирования

При тестировании различных вариантов страницы компания также должна использовать временный редирект, который будет перенаправлять некоторых посетителей на альтернативную страницу, чтобы проверить ее влияние. Для этого мы рекомендуем использовать временные, не кэшируемые перенаправления, чтобы предотвратить кэширование, индексирование и использование альтернативной версии для ранжирования исходного содержимого. 

Фактически, Google рекомендует использовать редирект 302 и для этого типа тестирования.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector