Типовые перенаправления
Перенаправление (также используются названия редирект, переадресация, форвардинг) — это способ сделать один и тот же документ доступным с других адресов.
Вы можете настроить перенаправление с помощью файла .htaccess по предложенным ниже примерам. Обратите внимание, что кириллические домены в директивах необходимо указывать в punycode .
Простое перенаправление
Чтобы ссылка на одну страницу перенаправляла на открытие другой, добавьте в файл .htaccess следующую строку:
Redirect 301 / http://example.com/index.html
В предложенном варианте:
- Redirect 301 — инструкция, сообщающая, что страница перемещена постоянно;
- http://example.com/index.html — адрес страницы, на которую происходит перенаправление.
При использовании 301 редиректа рейтинг сайта в поисковых системах сохраняется.
Аналогичный синтаксис простого редиректа в другом примере:
Redirect permanent / http://example.com/index.html
Перенаправление с использованием mod_rewrite
Перенаправление на другой домен
В примере ниже выполняется редирект с www.old-domain.ru на www.new-domain.ru:
RewriteEngine on
RewriteCond % ^(www\.)?old-domain\.ru$
RewriteRule ^(.*)$ http://www.new-domain.ru/$1 [R=301,L]
RewriteCond задает условие, при котором происходит выполнение правила, указанного в RewriteRule. Таким образом, при запросе любой страницы www.old-domain.ru или old-domain.ru будет осуществлен переход на адрес www.new-domain.ru.
Перенаправление домена без www на домен с www
Данное перенаправление также может быть выполнено двумя способами. В примерах осуществляется редирект с forum.example.ru на www.forum.example.ru.
Options +FollowSymLinks
RewriteEngine On
RewriteCond % ^forum\.example\.ru$ [NC]
RewriteRule ^(.*)$ http://www.forum.example.ru/$1 [R=301,L]
Способ 2 (в данном способе нет необходимости указания домена).
Options +FollowSymLinks
RewriteEngine On
RewriteCond % !^www\.(.*) [NC]
RewriteRule ^(.*)$ http://www.%/$1 [R=301,L]
Перенаправление домена с www на домен без www
В примерах осуществляется перенаправление с www.forum.example.ru на forum.example.ru.
Options +FollowSymLinks
RewriteEngine on
RewriteCond % ^www\.forum\.example\.ru$ [NC]
RewriteRule ^(.*)$ http://forum.example.ru/$1 [R=301,L]
Options +FollowSymLinks
RewriteEngine on
RewriteCond % !^forum\.example\.ru$ [NC]
RewriteRule ^(.*)$ http://forum.example.ru/$1 [R=301,L]
Перенаправление в подкаталог
Перенаправление поддомена forum.example.ru в подкаталог forum:
RewriteEngine on
RewriteBase /
RewriteCond % !^/forum
RewriteCond % ^forum.example.ru$ [NC]
RewriteRule ^index\.php(.*)$ /forum/$1 [L,QSA]
RewriteEngine on
RewriteBase /
RewriteCond % ^forum\.example\.ru$
RewriteCond % !/forum/
RewriteRule ^(.*)$ /forum/$1 [L]
Перенаправление поддомена www .forum.example.ru в подкаталог forum:
RewriteEngine on
RewriteBase /
RewriteCond % ^(www\.)?forum\.example\.ru$
RewriteCond % !/forum/
RewriteRule ^(.*)$ /forum/$1 [L]
Перенаправление с несуществующего файла
Такие перенаправления могут быть полезны, когда необходимо, чтобы тот или иной статический файл (.txt, .jpg, .pdf и многие другие расширения) обрабатывался Apache вместо Nginx.
Перенаправление на PHP-скрипт при обращении к несуществующему файлу robots.txt:
RewriteEngine on
RewriteCond % ^(www\.)?example\.ru$
RewriteCond % ^/robots.txt$
RewriteRule ^(.*)$ /forum/script.php [PT,L]
Перенаправление с несуществующего файла filename.jpg на необходимый статический файл (предварительно нужно переименовать filename.jpg — например, в filename.jpg2):
RewriteEngine on
RewriteCond % ^(www\.)?example\.ru$
RewriteCond % ^/filename.jpg$
RewriteRule ^(.*)$ /directory/filename.jpg2 [PT,L]
Перенаправление c http на https
Вариант 1 (без дополнительных условий).
RewriteEngine On
RewriteBase /
RewriteCond % !1
RewriteRule ^(.*)$ https://%/$1 [R=301,L]
Вариант 2 (перенаправление с http ://example.ru на https ://example.ru).
RewriteEngine On
RewriteBase /
RewriteCond % !1
RewriteCond % ^example\.ru$
RewriteRule ^(.*)$ https://example.ru/$1 [R=301,L]
Вариант 3 (перенаправление с http ://example.ru на https ://example.ru с отключением перенаправления для robots.txt).
RewriteEngine On
RewriteBase /
RewriteCond % !1
RewriteCond % !robots.txt
RewriteRule ^(.*)$ https://example.ru/$1 [R=301,L]
Вариант 4 (перенаправление с http ://example.ru на https :// www .example.ru).
RewriteEngine On
RewriteBase /
RewriteCond % !1
RewriteCond % ^example\.ru$
RewriteRule ^(.*)$ https://www.example.ru/$1 [R=301,L]
Вариант 5 (перенаправление с http :// www .forum.example.ru на https ://forum.example.ru).
Options +FollowSymLinks
RewriteEngine On
RewriteCond % ^www\.forum\.example\.ru$ [NC]
RewriteRule ^(.*)$ https://forum.example.ru/$1 [R=301,L]
RewriteBase /
RewriteCond % !1
RewriteRule ^(.*)$ https://%/$1 [R=301,L]
Вариант 6 (перенаправление с http ://forum.example.ru на https :// www .forum.example.ru).
Options +FollowSymLinks
RewriteEngine On
RewriteCond % ^forum\.example\.ru$ [NC]
RewriteRule ^(.*)$ https://www.forum.example.ru/$1 [R=301,L]
RewriteBase /
RewriteCond % !1
RewriteRule ^(.*)$ https://%/$1 [R=301,L]
Перенаправление с https на http
RewriteEngine On
RewriteBase /
RewriteCond % 1 [NC]
RewriteRule ^(.*)$ http://%/$1 [R=301,L]
Перенаправление на http для одной страницы
RewriteEngine On
RewriteBase /
RewriteCond % 1 [NC]
RewriteCond % ^/Необходимая директория_страница$
RewriteRule ^(.*)$ http://%/$1 [R=301,L]
Вариант 2 (общее перенаправление на https, с перенаправлением одной страницы на http). Этот способ часто необходим для CMS Bitrix и корректной работы обмена данными с 1С, т.к. 1C не может подключаться по протоколу https.
RewriteEngine On
RewriteBase /
RewriteCond % !1
RewriteCond % !^/Необходимая директория_страница$
RewriteRule ^(.*)$ https://%/$1 [R=301,L]
RewriteCond % 1 [NC]
RewriteCond % ^/Необходимая директория_страница$
RewriteRule ^(.*)$ http://%/$1 [R=301,L]
Отключение перенаправления на https для страницы bitrix/admin/1c_exchange.php для корректной работы обмена данных с 1C:
RewriteEngine On
RewriteCond % off
RewriteCond % !https
RewriteCond % !^/bitrix/admin/1c_exchange\.php$ [NC]
RewriteRule ^(.*)$ https://%/$1 [R=301,L]
Перенаправление на https для одной страницы
RewriteEngine On
RewriteBase /
RewriteCond % !1
RewriteCond % ^/Необходимая директория_страница$
RewriteRule ^(.*)$ https://%/$1 [R=301,L]
Более подробную информацию о перенаправлениях вы можете получить из официальной документации Apache .
Редирект программа что это
Сокращение ссылок
- 20 сервисов сокращения ссылок;
- Быстрая скорость работы, 2000 ссылок было сделано за 2 минуты;
- Есть возможность сокращать сразу несколько ссылок;
Трастовые сайты
- Более 3000 трастовых доменов, база постоянно пополняется;
- 18 доменных зон;
- Кодировка URL;
- Загрузка исходных ссылок в файле TXT
Google редирект
- В данных редиректах что бы попасть на конечный сайт нужно вручную подтвердить переход на страницу, это значит что антиспам боты не смогут определить конечную ссылку.
Редирект (redirect) что это и зачем он нужен?
В рамках данного обзора, я расскажу вам что такое редирект (redirect) и зачем он нужен.
Нередко в интернет заметках о сео продвижении можно встретить слово редирект, особенно если тема касается таких вопросов, как «перенос сайта с сохранением позиций в поисковике», «объединение разделов», «исправление некорректных адресов» и тому подобное.
Поэтому далее рассмотрим этот термин более подробно.
Примечание: Так же советую ознакомиться с обзором что такое зеркало сайта.
Редирект (redirect) это
Редирект (redirect) — это переадресация посетителей с одной страницы на другую. При этом переадресация может происходить как внутри сайта, так вне (со своего сайта в чужой).
Рассмотрим пример для понимания. Допустим, вы создали свой блог и долгое время публиковали в нем шедевральные обзоры. Людям они нравились и поэтому они оставляли ссылки на них в других сайтах (формировали ссылочную массу). Со временем, вы обнаружили, что часть страниц с некрасивым url адресом, например, вида «2222-11-11-11-11» (дата и время). Поэтому решили, что неплохо бы изменить адрес на более привычный для интернета (хотя бы транслит), чтобы посетителям было проще ориентироваться (ну и для сео оптимизации это полезно).
Однако, если просто изменить адрес, то возникнет следующая ситуация. Ссылки на других сайтах, ведущие на редактируемую страницу, станут бесполезными. Во-первых, вместо обзора будет возникать 404 ошибка (адрес не найден). Во-вторых, из-за этого по ссылкам не будет передаваться вес в полноценном объеме. В-третьих, такие ссылки будут постепенно удалять (см. во-первых).
Плюс к этому, хоть сам текст страницы не изменился, поисковые системы будут считать ее недавно добавленной и, соответственно, ниже ранжировать.
Чтобы избежать подобных проблем и применяется редирект, который информирует браузер и поисковые системы, такие как Яндекс и Google, что страница перемещена и расположена по другому адресу.
Как устроен редирект?
Общий алгоритм редиректа выглядит следующим образом:
1. Пользователь в браузере открывает страницу. Например, site/abc.html
2. Сайт возвращает браузеру специальный заголовок, в котором указывает какую страницу необходимо открыть вместо запрошенной. Например, site/abc2.html
3. Браузер открывает страницу, адрес которой был указан в заголовке.
В реальности же, зависит от того, как реализован редирект:
1. С помощью htaccess. Многие существующие сайты используют Apache (серверная программа для сайтов). И файл htaccess позволяет настраивать в нем сложные правила переадресации страниц. Алгоритм аналогичен общему.
2. С помощью PHP (и иные серверные языки). Тот же самый специальный заголовок может сформировать серверный язык, такой как php. Алгоритм аналогичен общему.
3. С помощью мета тега HTTP-EQUIV=REFRESH. С некоторого времени, браузеры стали поддерживать специальный мета тег в html, который позволяет перенаправлять пользователей с одной страницы на другую. Пример:
где «5;» — это время в секундах, через которое необходимо осуществить редирект, а URL=site.ru — это адрес страницы.
Алгоритм следующий. Браузер загружает полноценную страницу по старому адресу (и отображает ее пользователю), видит данный заголовок и осуществляет перенаправление через указанное время.
Данный подход появился из-за того, что порой требуется отобразить некую информацию до переадресации. Например, поясняющий текст о том, что страницы разделов были перенесены.
4. C помощью JavaScript. Это не совсем переадресация в полноценном смысле. Дело в том, что перенаправление на другой url происходит после того, как страница будет полностью загружена (в этом смысле схоже с мета тегом), и после выполнения специальной команды, вида:
window.location.href = "[адрес сайта]";
Отличие в том, что данная команда может быть вызвана в произвольном месте и неожиданно для браузера. Именно поэтому этот метод сложно считать полноценным редиректом.
Стоит знать, что корректными для поисковых систем считаются htaccess, php и мета тег. JavaScript далеко не всегда может корректно восприниматься, поэтому его стоит использовать только для внутренних целей (например, в ЛК пользователей).
Зачем нужен редирект?
Одни из самых основных ситуаций, где применяется редирект:
1. Перенос сайта с одного домена на другой. Этот редирект необходим, чтобы поисковые системы корректно восприняли переезд сайта.
2. Перенос страниц. Аналогично тому, как было в примере с адресом «2222-11-11-11-11».
3. Исправление некорректных страниц. Представьте себе ситуацию, что пользователь указал некорректный адрес страницы где-то в другом сайте и у вас нет возможности как-либо ее подкорректировать. В таком случае, остается только добавить редирект.
4. Для защиты от взлома. Адресное поле браузера это огромное поприще для злоумышленников. Поэтому периодически redirect добавляют для защиты от взлома.
5. Копии страниц. Порой, бывает так, что одна и та же страница доступна по нескольким разным адресам. Это негативно сказывается на сео оптимизации, так как информация дублируется. Чтобы исправить такую проблему применяют редирект с неосновных адресов на основной.
Примечание: Так же может быть применен мета тег rel=»canonical».
6. Техническая необходимость. Например, добавление слэша в конец адреса.
Кстати, вот несколько самых часто используемых редиректов:
Наиболее известные коды редиректов
Наиболее часто применяются следующие коды редиректов:
1. 301 Moved Permanently. Данный код означает, что url адрес страницы изменен навсегда. Тот же пример с адресом «2222-11-11-11-11», вряд ли пользователь решит его вернуть.
2. 302 Found. Данный код означает, что такая страница найдена, но временно отображается по другому адресу. Этот редирект позволяет сохранять позиции исходного адреса страницы в поисковых системах.
3. 307 Temporary Redirect. По сути, аналогичен 302 коду, однако не позволяет изменять метод запроса (GET/POST). В виду того, что такое редко требуется, чаще применяется 302 код.
Существуют и иные коды, но они достаточно редко используются. Обычно, достаточно 301 и 302 кодов.
Чего не стоит делать с редиректами?
Вот несколько вещей, которые не стоит делать с редиректами, если вы не хотите спустить в трубу ваши усилия по сео-оптимизации:
1. Два и более редиректов подряд. Поисковики не любят, когда происходит несколько редиректов подряд. Поэтому необходимо стараться делать так, чтобы был всего один redirect. Кроме того, каждая переадресация это время и дополнительный запрос к сайту.
2. Перенаправление на несуществующие страницы. Необходимо, чтобы страница, на которую происходит редирект, существовала и отображалась с кодом 200 (нет ошибок).
3. Бездумное использование кодов 301 и 302. Не стоит использовать коды не по назначению. Например, если вы временно перенесли страницу, то использование 301 кода может привести к массе проблем, когда вы начнете использовать исходную страницу. Как минимум, проблема в том, что поисковики уже стали считать исходную страницу несуществующей.
4. Использование JavaScript для замены полноценного редиректа. Как уже говорилось, поисковики не считают данный вид редиректа полноценным. Поэтому если необходима нормальная переадресация, то используйте иные методы.
5. Часто менять редиректы. Это как в жизни, если вас постоянно переадресуют разным людям, то закрадывается некое подозрение. Поэтому, старайтесь тщательно продумывать структуру ваших url адресов.
6. Если тексты страниц сильно отличаются. Представьте себе, что вы пытаетесь открыть страницу с мемами о котятах, а вас переадресует на страницу о физике. Вряд ли бы вы отнеслись к такой ситуации позитивно. Аналогично, поисковики воспринимают подобные редиректы. Конечно, существуют нюансы, например, код 302 на страницу «сайт чинится». Однако, не стоит подобным злоупотреблять.
Теперь, вы знаете что такое редирект, а так же некоторые важные особенности.
☕ Понравился обзор? Поделитесь с друзьями!
При подготовке материала использовались источники:
https://timeweb.com/ru/docs/virtualnyj-hosting/fajl-htaccess/tipovye-perenapravleniya/
https://ida-freewares.ru/redirekt-redirect-chto-eto-i-zachem-on-nuzhen.html