Сышышь ты, выходи сюда,
поговорим !

Главная Новости

Как сделать 301 редирект домена (страницы) на другой домен (страницу)

Опубликовано: 01.09.2018

видео Как сделать 301 редирект домена (страницы) на другой домен (страницу)

Как правильно настроить 301-й редирект в .htaccess и не только? Просто о сложном

Редирект (redirect) — это автоматическое перенаправление (переадресация) пользователя с одной страницы сайта на другую страницу. Редирект может осуществляться в пределах одного домена, то есть, к примеру, с главной страницы на внутренние или с внутренних страниц на главную. Но чаще всего, происходит перенаправление (редирект) с домена на домен, то есть на другой сайт.



Цифра 301 означает код, который возвращает веб-сервер в ответ на запрос браузера, когда он запрашивает какую-либо страницу. Обычно, он отдает код 200 (OK) – страница существует, и она немедленно отображается в окне браузера. А вот 301 означает, что страница перемещена перманентно, то есть навсегда. В ответе сервера также указывается новое местоположение перемещенной страницы.


Как сделать 301 редирект сайта

301 редирект помогает переехать на другой домен

В каких случаях необходим серверный редирект?

В своей работе мне приходиться сталкиваться с типичной ситуацией: клиент создал новый сайт, под него арендовал новый домен с более красивым и коротким именем. Кстати, а вы читали статью как выбрать доменное имя правильно?


Как настроить переадресацию домена? | REG.RU Видеосправка

Затем он перенес туда весь контент со старого сайта. Что дальше? Дальше моя задача состоит в следующем: оставить в поиске только один новый сайт, а со старого перенести его «вес», со всем внешним ссылочным, тИЦ, PR, позициями и трафиком. То есть, попросту говоря, — « склеить » старый сайт с новым. Для этого и нужно сделать редирект .

Правильный редирект — он какой?

Вообще говоря, способов сделать и настроить редирект очень много. В этой статье я опишу только все наиболее простые и популярные методы. Вы можете выбрать подходящий именно вам способ сделать редирект для сайта (домена), а также для страниц (ссылок).

Я сознательно не буду упоминать варианты использования мета-тегов:

< meta http - equiv = "refresh" content = "0;URL=http://newdomain.com" / >

Или скриптов JavaScript, так как такие операции могут быть приняты за попытку применить дорвей.

Самым правильным перенаправлением считается серверный редирект , когда браузеру и поисковому роботу отдается код 301. Бывают еще редкие случаи употребления файла robots.txt. Но я вам не рекомендую использовать его в этих целях. Всё-таки robots.txt предназначен для других задач.

Редирект через htaccess

.htaccess позволяет прописать редиректы

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

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

Случай №1: изменение имени файла

Вы поменяли название файла old_file.html на new_file.html. Чтобы автоматически перенаправить посетителя с одного файла на другой, запишем в файле .htaccess следующую директиву:

redirect 301 / old_file . html http : //www.example.com/new_file.html

Случай №2: Замена расширения файла

Вы изменили расширение файла с file.html на file.php. В этом случае пишем:

redirect 301 / file . html http : //www.example.com/file.php

Как видите, код практически идентичен случаю №1.

Случай №3: Редирект с домена с www на домен без www

Самый, пожалуй, распространенный случай, когда необходимо «склеить» два домена: www.example.com и example.com. Если этого не сделать с самого начала, то может сложиться ситуация, когда поисковая система проиндексирует оба сайта (хотя физически это будет один и тот же сайт). Такого допускать ни в коем случае нельзя. Сразу определяйтесь какого вида домен вы хотите видеть в выдаче: с префиксом www или без него.

Пример кода, когда хотите оставить домен без www:

RewriteEngine on

RewriteCond % { HTTP_HOST } ^ www . example . com

RewriteRule ^ ( . * ) $ http : //example.com/$1 [R=301,L]

Пример кода, когда хотите оставить домен c www:

RewriteEngine On

RewriteCond % { HTTP_HOST } ^ example . com

RewriteRule ( . * ) http : //www.example.com/$1 [R=301,L]

Случай №4: Избавляемся от префикса index.php после слэш (/)

Если вам не нравится URL вида http://example.com/index.php, то способ избавиться от префикса index.php следующий:

RewriteCond % { THE_REQUEST } ^ [ A - Z ] { 3 , 9 } \ / index \ . php \ HTTP /

RewriteRule ^ index \ . php $ http : //example.com/ [R=301,L]

Соответственно, если расширение .html, то меняем index.php на index.html

rss