Sozdaiblog.ru
Назад

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

Опубликовано: 18.02.2013
Время на чтение: 7 мин
16
2

301 Редирект

Приветствую всех читателей – Sozdaiblog.ru!

Сегодня мы поговорим о том, как сделать в файле htaccess 301 редирект (redirect 301).

301 редирект является наиболее эффективным и дружественным  для поисковых систем методом перенаправления Веб-страниц. Его не так сложно реализовать и он поможет сохранить собственный рейтинг в системе для каждой перенаправляемой им страницы.

Если Вам необходимо изменить имена каких-нибудь файлов или переместить страницу то, это самый безопасный вариант.

Код «301» интерпретируется как «переехал на постоянное место жительства».

Ниже приведены несколько методов для осуществления URL перенаправления с помощью кода и  Htaccess.

 

301 Редирект с помощью скриптов

 

ColdFusion Redirect

<.cfheader statuscode="301" statustext="Moved permanently">
<.cfheader name="Location" value="http://www.new-url.com">

 

PHP Redirect

<?
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.new-url.com" );
?>

 

ASP Redirect

<%@ Language=VBScript %>
<% Response.Status="301 Moved Permanently" Response.AddHeader "Location","http://www.new-url.com/" %>

 

ASP .NET Redirect

<script type="text/javascript">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.new-url.com");
}
</script>

 

JSP (Java) Redirect

<% response.setStatus(301); response.setHeader( "Location", "http://www.new-url.com/" );
response.setHeader( "Connection", "close" ); %>

 

CGI PERL Redirect

$q = new CGI;
print $q->redirect("http://www.new-url.com/");

 

Ruby on Rails Redirect


def old_action
headers["Status"] = "301 Moved Permanently"
redirect_to "http://www.new-url.com/"
end

Со скриптами закончили. Теперь полезли в htaccess.

 

301 редирект в Htaccess

 

Редирект со старого домена на новый.


Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

 

Примечание:
Этот Htaccess метод перенаправления работает только на Linux серверах имеющих Apache Mod-Rewrite moduled «Включен».

 

Перенаправление с «сайт.ru» на "www.сайт.ру


Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

 

Лично мне больше всего нравится использовать 301 редирект в файле htaccess.
А Вам?

Думаю, что этих редиректов более чем достаточно.

Поэтому, на сегодня это всё. До новых статей.

С уважением, Денис Черников!

Поделиться
Похожие записи
Комментарии:
  • Владимир Жолдош
    Опубликовано: 19.02.2013 Ответить на сообщение

    Перенаправление с «сайт.ru» на "www.сайт.ру. А наоборот можно? И если да, то как лучше?

    • Денис Черников
      Опубликовано: 19.02.2013 Ответить на сообщение

      Конечно, можно! Просто местами поменяйте адреса и всё, это лучший вариант.

  • Алексей
    Опубликовано: 19.02.2013 Ответить на сообщение

    Денис! У меня к Вам 2 вопроса по поводу редиректа 301
    1,Мне настраивал это редирект саппорт и при направлении на мой сайт с бесплатного (у вас — Редирект со старого домена на новый)добавил строку между 2 и 3
    RewriteCond %{HTTP_HOST} !^na-kruchok.ru$
    Не подскажите ее назначение?
    2 Что означает строка Options +FollowSymlinks, и для чего она нужна

    • Денис Черников
      Опубликовано: 19.02.2013 Ответить на сообщение

      1. Это что-то вроде места расположения Вашего домена на хосте без www (до каждой переменной я не докапывался).
      2. Это типа ярлыков в виндовсе. Позволяет отдавать файлы, которые физически находятся за пределами www root директории, но на которые есть ярлыки (symbolic link). Лучше не трогать!

  • Anna
    Опубликовано: 19.02.2013 Ответить на сообщение

    А я так и не пойму для чего это нужно, простите чайничка
    И в какие файлы вставлять код?

    • Денис Черников
      Опубликовано: 19.02.2013 Ответить на сообщение

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

  • Томский школьник
    Опубликовано: 19.02.2013 Ответить на сообщение

    Ого... Круто получилось: я статью написал про редирект 301 и через два дня ты Совпадение да и только. Я заметил, что все люди мыслят одинаково и практически в одно время.

    • Денис Черников
      Опубликовано: 19.02.2013 Ответить на сообщение

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

  • Сергей Москвитин
    Опубликовано: 19.02.2013 Ответить на сообщение

    Приветствую тебя Денис и всех остальных! Статья интересная спасибо. Как только наступит необходимость переезда домена, уже буду вооружён знаниями.
    А синтаксическую ошибку я все таки исправил. И об этом я написал коммент в к твоей статье «Как исправить ошибку синтаксического анализа XML».

    • Денис Черников
      Опубликовано: 19.02.2013 Ответить на сообщение

      Привет, Сергей!
      Можете страничку в закладки внести, чтобы не забыть, где искать.

  • Сергей Москвитин
    Опубликовано: 19.02.2013 Ответить на сообщение

    А я интересные сайты не вношу в закладки. Я их сохраняю в папку по интересам на компьютере. Так лучше. Потому что я очень много сохраняю интересных статей.
    А вообще я если не возражаешь скачаю полностью твой сайт. Есть такие программки. Это даже лучше будет, а потом спокойно читай уже даже без иннета. Не спеша и все, что станет интересным.

    • Денис Черников
      Опубликовано: 19.02.2013 Ответить на сообщение

      Да пожалуйста, сохраняйте и читайте без Интернета. Главное, чтобы Вам это приносило пользу и Вы оставались довольны.

  • Дмитрий
    Опубликовано: 14.06.2013 Ответить на сообщение

    Скажите, а если у меня поменялся движок на сайте — был joomla, стал wp, как лучше сделать редирект и не потерять трафик.
    А тополучается, сейчас все страницы проиндексированные в Яндексе имеют джумловский вид, а в реале они уже все ЧПУ. И при клике на любую ссылку в Яндексе попадаешь просто на главную страницу.
    Короче нужен плагин, чтобы настроить перенаправление старых проиндексированных ссылок на новые страницы.

    • Денис Черников
      Опубликовано: 14.06.2013 Ответить на сообщение

      Извините, Дмитрий, но с joomla не работал, но по аналогии там должно быть то же самое.

      • Дмитрий
        Опубликовано: 14.06.2013 Ответить на сообщение

        Денис, спасибо за ответ.
        Вопрос не в joomla.
        Была страничка http: //site.ru/index.php?option=com_content&view=category&layout=blog&id=37&Itemid=50
        Стала, скажем, http: //site.ru/category/page.html/
        Старая проиндексирована Яндексом, новая — еще нет. Контент тот же почти.
        Нужно ли использовать редирект (плагином/htaccess/в скриптах) или достаточно просто сообщить яндексу через вебмастер и sitemap о новой структуре сайта? Вот в чём вопрос.

        • Денис Черников
          Опубликовано: 14.06.2013 Ответить на сообщение

          По идее Вам нужно показать редиректом, что у Вас были страницы одного типа (http: //site.ru/index.php?option=com_content&view=category&layout=blog&id=37&Itemid=50 ), а стали (http: //site.ru/category/page.html/). Если я правильно понял. Вообще я сомневаюсь, что есть редирект, который ЧПУ адреса перебивает. Одно дело с домена на домен адреса перебивать, но другое совсем дело структуру ссылок менять. Лучше сделать редирект для каждой отдельной записи на саму себя, но с новым видом ссылки. То есть — http: //site.ru/index.php?option=com_content&view=category&layout=blog&id=37&Itemid=50 РЕДИРЕКТ НА http: //site.ru/category/page.html.

Имя
Укажите своё имя и фамилию
E-mail
Без СПАМа, обещаем
Текст сообщения
Отправляя данную форму, вы соглашаетесь с политикой конфиденциальности и правилами нашего сайта.