» » » Как сделать 301 редирект (перенаправление) через файл .htaccess
logotip

Как сделать 301 редирект (перенаправление) через файл .htaccess

Всем привет! Сегодня на SEO-Mayak.com довольна сложная и интересная тема. Многие, почти все начинающие блогеры даже понятия не имеют, что такое 301 редирект. Я как-то уже касался этой темы в статье про дубли контента и теперь мы рассмотрим ее поподробней.

Что такое 301 редирект? Это специальный код, который возвращает сервер при обращении к определенному URL.

Что это значит? Это значит, что если вы набрали в адресной строке браузера определенный URL, то Вас перенаправят на новый адрес.

Для чего это все нужно? Возьмем пример из реальной жизни. Заходите вы по определенному адресу, а вам говорят — «А здесь теперь такие не живут! Они совсем своим имуществом переехали на другую улицу и вот Вам их новый адрес…» Согласитесь полезная информация? Я не зря сказал — «…со все своим имуществом» т.е они не чего не оставили на старом адресе. Это важно!

redirekt 301

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

Прописываем 301 редирект в файле .htaccess

Чтобы выполнить сие действие надо в файле .htaccess прописать следующее:

  1. Redirect 301 / http://новый сайт.ru

Где «/» означает, что все начиная с «головы» сайта включая все подкаталоги будет переадресовано на новый адрес.

Не забудьте сделать резервную копию сайта если вдруг что-то пойдет не так!

Теперь рассмотрим другую ситуацию. У меня есть 2 квартиры, а живу я лишь в одной. Ко мне приходят письма по другому адресу, звонит телефон, заходят разные люди и т.д. А я забыл повесить объявления, что нахожусь я вообще в другом месте. Забавная история! Получается я теряю собственные авторитет в глазах окружающих из-за своей забывчивости.

Из этого вывод. Надо непременно указать поисковому роботу точный адрес проекта, например: www.сайт.com или просто сайт.com потому, что это два разных адреса.

Как это осуществить смотрите на этом примере:

Перенаправление с www на без www

  1. Options +FollowSymLinks
  2. RewriteEngine On
  3. RewriteCond %{HTTP_HOST} ^www.сайт\.com$ [NC]
  4. RewriteRule ^(.*)$ http://сайт.com/$1 [R=301,L]

Перенаправление с без www на с www

  1. Options +FollowSymLinks
  2. RewriteEngine On
  3. RewriteCond %{HTTP_HOST} ^сайт\.com$ [NC]
  4. RewriteRule ^(.*)$ http://www.сайт.com/$1 [R=301,L]

Надо заметить, что если в файле .htaccess уже прописана строчка RewriteEngine On, то ее повторять уже не надо и не забудьте вписать свой домен.

Существует мнение, что с защищенного протокола https:// также надо перенапралять пользователей на основной протокол http:// Я даже обратился в службу поддержки своего хостинг провайдера с этим вопросом. На что мне ответили, что возможность перенаправления есть и для этого в файле .htaccess необходимо прописать следующее:

  1. RewriteEngine On
  2. RewriteCond %{SERVER_PORT} ^443$ [OR]
  3. RewriteCond %{HTTPS} =on
  4. RewriteRule ^(.*)$ http://ваш сайт.com/$1 [R=301,L]

Бывает такие случаи, что необходимо перенести только одну страницу при этом сохранить ее вес. Для этого в файле .htaccess прописываем:

  1. Redirect 301 /путь/пост.html  http://новый сайт.com/пост.html

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

На сегодня у меня все. Как вам статья?

Все мы когда-то были детьми:

С уважением, Виталий Кириллов

Комментарии: 135

  1. Анна:

    Ясно теперь, что это такое. Пока не нужно. Но знать это стоит заранее, а не когда петух в … клюнет.

    Сегодня Крещение.
    Праздник великий.
    Дарует прощение
    Господь многоликий.

    Пусть будут дела
    Вашим мыслям под стать.
    И пусть вам дарует
    Господь благодать!

    Ответить
    • админ:

      Спасибо Анна за красивое поздравление! Лучше узнать поздно, чем никогда.

      Ответить
  2. Стефания:

    Здравствуйте, Виталий!

    Я, я, это я понятия не имею, что такое 301 редирект 😉

    У Вас такой серьезный тематический блог — очень полезный для таких несведущих личностей, как я.
    Так толково и понятно написано, спасибо за информацию!

    Кстати, дети очень забавные. Вот я где-то на их уровне блоговедения нахожусь! 😉

    Ответить
    • админ:

      Спасибо Стефания!

      Ответить
  3. Тамара:

    От души посмеялась над удивительным сходством общения взрослых и детей.Мой блог тоже ещё «в подгузниках»,и я «всё понимаю,но сказать не могу».Буду учиться у Вас.У Вас понятный язык.Спасибо.

    Ответить
    • админ:

      И Вам спасибо Тамара!

      Ответить
  4. Василий:

    Это всё конечно очень полезно, но разве нельзя это сделать просто поставив нужный плагин…?

    Ответить
    • админ:

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

      Ответить
  5. Татьяна:

    Спасибо, но мне так сложно даются все эти технические процессы, что стремлюсь найти какое-либо совсем простое решение…

    Ответить
    • админ:

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

      Ответить
  6. elza:

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

    Ответить
    • админ:

      Пожалуйста elza, заходите еще.

      Ответить
  7. Юрий:

    Эти коды работают для любого движка или только для Вордпресс? С дублем главной страницы я так и не понял, как перенаправлять — по последнему примеру?

    Ответить
    • Виталий Кириллов:

      Я пробовал только на Вордпресс. По последнему примеру я обращался в службу поддержки хостинга и они мне прислали такой код перенаправления, а что непонятно?

      Ответить
  8. Сергей:

    Про программу Site-Auditor нашел 2 и 3 части статей, а 1 где?

    Ответить
    • Виталий Кириллов:

      Сергей, в конце каждой статьи есть ссылки на остальные части. 1 часть здесь

      Ответить
  9. Анна:

    А если у меня в роботсе.txt прописаны домены без www то мне все равно нужно в файле htaccess прописывать? и какой вариант — верхний или нижний? Извините за тупость.

    Ответить
    • Виталий Кириллов:

      Анна,прописывать 301 редирект в .htaccess надо обязательно (верхний код), а еще желательно указать поисковикам на главное зеркало сайта.

      Ответить
  10. Анна:

    Прописала, что вы советуете и еще на одном блоге нашла информацию о том, что в этот файл нужно помещать список роботов, которым запрещено индексировать сайт — это правда?

    Ответить
    • Виталий Кириллов:

      Отдельно можно прописать директивы только для Яндекса и Гугла, для остальных поисковиков прописываются общие директивы.

      Ответить
  11. Андрей:

    Добрый вечер.
    Мне необходимо сделать редирект с одной категории сайта и всех адресов внутри нее на другую категорию или страницу.
    Redirect 301 /ppp/ http: //сайт.ру/qqq/ — не работает (движок DLE если что)

    Ответить
    • Виталий Кириллов:

      Здравствуйте Андрей!
      Попробуйте вот такой вариант:
      [php]RewriteRule ^ppp/(.+)$ /qqq/$1 [R=301,L][/php]
      В начале файла .htaccess обязательно должны быть прописаны строчки:
      [php]RewriteEngine On
      RewriteBase /[/php]
      Удачи!

      Ответить
  12. Анна:

    Виталий, ответьте если не сложно, используете ли вы плагин для подписи внизу статьи и если да, то какой?

    Ответить
    • Виталий Кириллов:

      Анна, Вы имеете в виду блок социальных кнопок?

      Ответить
  13. Анна:

    Нет, я имею ввиду «С уважением, Виталий Кириллов»

    Ответить
  14. Алексей_1:

    Виталий, подскажите пожалуйста как сделать редирект со страниц имеющих в УРЛ /last/, на страницы без него, например было:
    http:// 12345.org/forum/cat-prochie/last/topic-32.html
    стало:
    http:// 12345.org/forum/cat-prochie/topic-32.html

    такой вариант не работает: RewriteRule ^/last/(.+)$ /$1 [R=301,L]

    Ответить
    • Виталий Кириллов:

      Попробуйте так:
      RewriteRule ^(.*)/last/(.*)$ /$1 [R=301,L]

      Ответить
      • Алексей_1:

        К сожалению нет, не пойму в чем дело.

        Ответить
  15. Анна Вечеря:

    Виталий,еще раз здравствуйте! подскажите, как сделать редирект, если у меня раньше ссылки выглядели так http:// мой сайт.ru/sample-post/ (без плагина на русском), а теперь выглядят вот так http:// мой сайт.ru/%category%/%postname%.html с плагином Cyr-To-Lat, на латинице??? для каждого поста отдельно придется?

    Ответить
    • Виталий Кириллов:

      Анна ссылка так выглядеть не должна, наверное вы что-то не так сделали при настройке плагина.

      Ответить
      • Анна Вечеря:

        а как она должна выглядеть? теперь у меня например http:// sait.ru/kategorija/stat’ja.html Так неправильно?

        Ответить
        • Виталий Кириллов:

          Вот так правильно!

          Ответить
  16. Владимир:

    Привет, а как лучше перадресовать www. site.ru на site.ru или наоборот или ето без разницы?

    Наперед спасибо за ответ

    Ответить
    • Виталий Кириллов:

      Здравствствуйте Владимир! В статье как раз приведены данные примеры.

      Ответить
      • Владимир:

        Есть 2 варианта
        1-й переадресацыя с www. сайт.com на сайт. com
        2-й — с сайт.com на www. сайт.com
        Меня интересует какой вариант 1-й или 2-й — будет лучше с точки зрения CEO, или ето без разницы

        Ответить
        • Виталий Кириллов:

          Владимир, аббревиатура www (сокращенно от World Wide Web и в переводе — всемирная паутина) уже не играет никакой роли с точки зрения SEO. Сайты успешно продвигаются и без www.

          Ответить
  17. Николай:

    Добрый день!
    Мой файл выглядит вот так , как мне его изменить для редиректа с www на без www
    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ — [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    Ответить
    • Виталий Кириллов:

      Николай, его не надо менять. Надо добавить:

      Options +FollowSymLinks
      RewriteEngine On
      RewriteCond %{HTTP_HOST} ^www.сайт\.com$ [NC]
      RewriteRule ^(.*)$ http://сайт.com/$1 [R=301,L]
      

      Перед строчкой:

      # END WordPress
      Не забудьте вставить свой домен.
      
      Ответить
  18. Елена:

    Здравствуйте!
    Что-то я запуталась.
    У меня в футере через стандартные настройки меню не получается сделать так, чтобы прописанная в ней ссылка на группу в ВК открывалась в новой вкладке.
    Поэтому я решила создать отдельную страничку php и в ней прописать редирект 301.
    Вот вопрос: можно ли такое делать? Не будут ли негативно к такой переадресации относиться поисковики?

    Ответить
    • Виталий Кириллов:

      Здравствуйте Елена. Я думаю поисковики к перенаправлению отнесутся нормально.

      Ответить
  19. Елена:

    Извиняюсь, но решила сделать добавление к предыдущему комментарию.
    Даже при добавлении другой страницы с редиректом у меня все равно ссылка на группу открывается в том же окне.
    Думала обхитрить получиться)))
    Как мне сделать так, чтобы страница с редиректом обязательно открылась в новой вкладке?
    Использую вордпресс. И в разделе «Внешний вид -> Меню» совершенно нет возможности добавить атрибуты к ссылке. Даже nofollow, хотя надо.
    Посоветуйте, пожалуйста, как сделать правильно?

    Ответить
    • Виталий Кириллов:

      Елена, ну как я могу посоветовать не видя сам код! Вы бы хоть ссылку на свой сайт оставили.

      Ответить
      • Елена:

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

        Ответить
        • Виталий Кириллов:

          Елена, все нормально! Хорошо, что Вы разобрались и если что-то еще будет нужно, спрашивайте!

          Ответить
  20. Моника:

    Добрый день,
    Прошу подсказать,
    1. нужно сделать перенаправление
    сайт.ru/category/16-avto на сайт.ru/category/avto

    Redirect 301 /category/16-avto http: // сайт.ru/category/avto правильно понимаю? Или нет?

    2. Где именно (после какой строки) в .htaccess прописывать этот Redirect 301 ? (на CMS Joomla)
    Заранее спасибо за ответ

    Ответить
    • Виталий Кириллов:

      Моника Вы правильно понимаете. Вообще в .htaccess можно вставлять в любое место, после или между других кодов.

      Ответить
      • Моника:

        Вставляла в .htacceess 2 разные места ( и сразу после Engine On) никакого результата. Абсолютно.
        Сегодня, после вашего сообщения, решла попробовать еще раз вставить после Engine On.
        О, чудо! Все заработало. Что за глюки? ( Кэш и все такое — не чистила, к сайту не притрагивалась) Вот и как это может быть? Ума не приложу)))
        Но главное, все ок)) Работает ( СМS Joomla 2.5.11 )

        Спасибо, Виталий

        Ответить
        • Виталий Кириллов:

          Пожалуйста Моника!

          Ответить
  21. Елена:

    Здравствуйте!
    Я к вам частый гость)))
    (Терпения вам, чтобы дочитать мой комментарий;)))))))))))

    Ситуация: был сайт на домене ру. Сейчас перенесла все на ком.
    На старом сайте теперь пусто, вообще все снесла.
    Только .htaccess оставила для редиректа.
    Сделала редирект с домена ру на домен ком.
    (строчка из кода: RewriteRule (.*) http: // site.com/$1 [R=301,L])
    Теперь все страницы со старого домена открываются нормально.

    Проблемы возникли только с двумя ссылками.
    Нужно со ссылки http: // site.ru/papka/jurnal отправить на ссылку http: // site.com/papka/journal
    (тут еще jurnal меняется на journal)
    Для этого перенаправления написала так:
    Redirect 301 http: // site.ru/papka/jurnal http: // site.com/papka/journal

    У меня ссылка меняется, но не совсем правильно (БЛИН!!!)
    Получается вот так: http: // site.com/papka/jurnal, т.е. без буквы o.
    В итоге открывается 404 страница.
    Как бы так сделать, чтобы нормально все работало?
    Спасибо!

    Ответить
    • Виталий Кириллов:

      Здравствуйте Елена!
      Правильный редирект выглядит так:
      Redirect 301 /papka/jurnal http:// новый сайт.com/papka/journal

      Ответить
      • Елена:

        Здравствуйте!
        А! Так я делала. Тоже не работает. 404 страница открывается.
        Может быть есть еще какие-нибудь способы?
        Может быть потому что тут ( RewriteRule (.*) http: // site.com/$1 [R=301,L]) ) так прописано?

        Ответить
        • Виталий Кириллов:

          Елена, у вас данная директива одиночной строкой прописана?

          Ответить
        • Елена:

          Вот так прописано.

          # BEGIN WordPress

          Options +FollowSymLinks
          RewriteEngine On
          RewriteRule (.*) http: // site.com/$1 [R=301,L]
          Redirect 301 /papka/jurnal http: // site.com/papka/journal

          # END WordPress

          Ответить
          • Виталий Кириллов:

            Елена попробуйте так:

            RewriteEngine On
            RewriteCond %{HTTP_HOST} сайт1.ru
            RewriteRule (.*) http://сайт2.ru/$1 [R=301,L]
            
            Ответить
        • Елена:

          Эх, опять так же.
          Ссылка на новый домен пересылает, только букву «o» в новую ссылку не добавляет все равно.

          Ответить
          • Виталий Кириллов:

            Елена, я в затруднении…

            Ответить
  22. Александр:

    Делал сайт клиентке с именами: http: // xn--22-mlcaza1aekclm7q.xn--p1ai/ (перекрёсток22.рф)
    http: // xn--22-mlcaa3ab5aelcnn.xn--p1ai/ (перекресток22.рф)
    и http: // perekrestok22.com/
    все ведут на один хостинг, на сайте добавил виджет от вконтакте который привязан к имени http: // perekrestok22.com/
    и на этом адресе работает а на остальных нет, как сделать редирект, чтобы все русские имена открывали сайт с доменом http: // perekrestok22.com/, тогда работать будет всегда.
    Спасибо заранее!

    Ответить
  23. Ирина:

    Виталий, добрый вечер!

    В последний ап яндекс выбрал главным зеркалом сайт.ру с www (а так как было без www, обнулился тиц!)

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

    redirect 301 /файл.html http://сайт.ru/новое название рубрики/



    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ — [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    Пробовала пристроить перенаправление, как Вы советовали, перед строчкой # END WordPress

    — выдает ошибку перенаправления,пишет, что оно никогда не закончится…

    Подскажите, пожалуйста, что делать ???

    Заранее большое спасибо!!!

    Ирина

    Ответить
    • Виталий Кириллов:

      Здравствуйте Ирина. Я немного не понял, что значит Яндекс выбрал главное зеркало? Яндекс зеркала не выбирает, это Вы должны выбрать главное зеркало сайта и указать на него Яндексу.
      В случаи с Вашим редиректом я тоже не понял. Что значит файл.html и почему Вы его хотите сделать рубрикой?

      Ответить
  24. Ирина:

    Виталий, доброе утро!

    Действительно как -то путано все написала. Начну сначала.

    Сайт был изначально без www, в этот апдейт получила письмо от яндекса, что он принял решение о смене главного зеркала на с www, после чего почти сразу обнулили тиц. Сайт новый, да и я новичок, поэтому до этого вопроса ранее руки не доходили. Вот я и хочу указать яндексу на главное зеркало в robots и htaccess. Я так понимаю, просто в яндекс.вебмастере указать — это не достаточно.

    Теперь про перенаправление.

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

    Решила перевести сайт на вордпресс 301 редиректом в htaccess постранично, чтобы сохранить анкорный вес.

    301 redirect старая страница —> новая страница

    таких строк несколько, затем идет

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ — [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    Пыталась в этот файл в разные места пристроить перенаправление с www на без www, но браузер при загрузке файла выдает ошибку, что перенаправление задано неправильно и «никогда не завершится»

    Ответить
    • Виталий Кириллов:

      Здравствуйте Ирина! Теперь мне стало все гораздо понятней).
      Пропишите перенаправление следующим образом:

      #редирект с www на без www
      Options +FollowSymLinks
      RewriteCond %{HTTP_HOST} ^www.Ваш сайт\.com$ [NC]
      RewriteRule ^(.*)$ http://Ваш сайт/$1 [R=301,L]
      
      Ответить
  25. Ирина:

    Виталий, большое спасибо за Ваш ответ!

    Только вот я в php ни бум бум, поэтому совершенно не представляю, в каком месте моего разросшегося файла htaccess нужно вставить упомянутую Вами конструкцию, чтобы переадресация старых страничных адресов на новые не мешала 🙁

    Буду очень признательна, если поясните, после какой строчки нужно прописать.

    С уважением,
    Ирина

    Ответить
    • Виталий Кириллов:

      Ирина, вставьте код перед строчкой:
      # END WordPress

      Ответить
  26. Ирина:

    Виталий! Вы просто волшебник — все работает!!! Никаких сообщений об ошибке теперь! Спасибо Вам большое!

    Только вот меня немного смутило, что когда при вводе названия сайта без www выдает код 301 и пишет, что перемещено на с www. Это правильно? Главное зеркало теперь без www или как?

    В роботс.текст прописала для яндекса хост также без www. Это правильно, если я хочу, чтобы главное зеркало было без www?

    Ответить
    • Виталий Кириллов:

      Ирина, если в адресной строке браузера набрать Ваш домен с www, а страница откроется без www — это значит, что редирект работает.
      Вы правильно прописали в robots.txt

      Ответить
  27. Ирина:

    Виталий, ещё раз большое спасибо за помощь!

    Буду надеяться, что теперь тиц вернётся…

    Обязательно подпишусь на Ваши обновления. Желаю Вам удачи!

    Ответить
    • Виталий Кириллов:

      Спасибо Ирина и Вам успехов!

      Ответить
  28. Денис Владимирович:

    Скажите, на сегодняшний день, актуален ли такой способ, если адрес сайта остается тот же, только весь контент и сайт переезжает с одного CMS на другой? Если да, то все те же манипуляции нужно проделать или они чем-то отличаются от вашего случая?

    Ответить
    • Виталий Кириллов:

      Денис Владимирович, вы имеете в виду перенаправление с www на без www?

      Ответить
  29. Игорь:

    Здравствуйте.
    Сделал новый сайт на другом движке. В итоге урлы абсолютно разные и общая переадресация не подойдет. Задумал редирект отдельных страниц у которых есть PR.
    Корректно ли будет со страницы на которой текст отличается но для юзера тема не поменялась ставить редирект для сохранения ПР?

    И второй вопрос.
    Если пишем Redirect 301 / http://новый сайт.com
    то идет переадресация всего сайта и, в моем случае, все страницы кроме главной ведут на несуществующие.
    Как отдельно главную страницу перенаправить?

    Ответить
    • Виталий Кириллов:

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

      Ответить
  30. ITишник:

    Редирект 301 — святое, поисковики его любят, так как предотвращает дублирование страниц

    Ответить
  31. Ирина:

    Виталий, добрый день!

    А как узнать, произошла ли уже переклейка старых страниц с новыми и в какой момент старые страницы можно удалить вместе с редиректом?

    Подскажите также, происходит ли переклейка зеркал с www и без www? Тоже чтобы снять редирект и чтобы главное зеркало отдавало 200 ОК, а не перенаправление?

    У меня из-за большого количества редиректов возникли проблемы с индексированием :(. Просто все удалить не хочется — сайт приобрел 20 ТИЦ.

    Заранее большое спасибо!

    Ирина

    Ответить
    • Виталий Кириллов:

      Здравствуйте Ирина! С данным вопросами Вам лучше обратиться в службу поддержки Яндекса!

      Ответить
  32. Ирина:

    Спасибо, Виталий, так и сделаю!

    Ответить
  33. Igor:

    Спасибо!

    Ответить
  34. Николай:

    Доброго времени суток! В htaccess прописываю Redirect 301 / http:// со своим сайтом, в итоге сайт становится недоступным с ошибкой «Неверное перенаправление на странице». Что я делаю не так?

    Ответить
    • Виталий Кириллов:

      Николай, я не знаю, что вы делаете не так…

      Ответить
  35. Валерий:

    Здравствуйте, Виталий!
    У меня возникла такая проблема. Поменял урл на всех страницах сайта.Сейчас гугл направляет по новым адресам, а яндекс выдаёт 404 ошибку. Как мне сделать массовый редирект для всех страниц и возможно ли это? Спасибо!

    Ответить
    • Виталий Кириллов:

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

      Ответить
  36. Александр:

    Суть вопроса.
    Есть сайт, с ним всё в порядке, надо прописать перенаправление на IP если идёт обращение к сайту не по стандартному порту.

    Допустим есть сайт www.bublik.ru как и всегда порт по умолчанию 80 (всё работает всё супер)
    и есть ещё сайт с IP: 100.100.100.100 порт 3344
    что прописать в .htaccess для перенаправления всех запросов на www.bublik.ru:3344 в 100.100.100.100:3344

    Заранее спасибо

    Ответить
    • Виталий Кириллов:

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

      Ответить
  37. Любовь:

    А если у меня никогда не было другого адреса сайта, а мне при анализе страницы выдает Ключевое слово / фраза не присутствует в URL для этой страницы. Если вы решили переименовать этот URL рекомендуем проверить старые URL 301 редиректы на новый!

    Ответить
  38. Александр:

    Здравствуйте, Виталий

    У меня к Вам 2 вопроса:
    1) в настройке, которую Вы приводите (перенаправление «с www» на «без www» указана строка Options +FollowSymLinks
    А что она значит?

    2) у меня сайт третьего уровня ()
    В каком месте нужно ставить обратный слэш?
    2.1) RewriteCond %{HTTP_HOST} ^www.trcommunication\.kiev.ua$ [NC]
    или
    2.2) RewriteCond %{HTTP_HOST} ^www.trcommunication.kiev\.ua$ [NC]

    В результате, по Варианту 2.1. будет такой сегмент файла .htaccess?

    Options +FollowSymLinks
    RewriteCond %{HTTP_HOST} ^www.trcommunication\.kiev.ua$ [NC]
    RewriteRule ^(.*)$ http://trcommunication.kiev.ua/$1 [R=301,L]

    Спасибо!

    С уважением,
    Александр

    P.S. Попробовал на сайте оба варианта постановки обратного слэша. В обоих случаях сайт перестает видеть файл */robots.txt
    ЧТО я делаю не так?

    Ответить
    • Виталий Кириллов:

      1. Options +FollowSymlinks — строка нужна для работы модуля Apache — mod_rewrite.
      2. Я не знаю в чем причина, но правильный вариант 2.1.

      Ответить
  39. Витас:

    добрый день!
    количество ошибок индексации страниц с пометкой «документ запрещен в файле robots.txt» резко возросла за несколько дней с 1 до 185 страниц. Все исключенные страницы имеют схожий вид типа: /?p=1120 (разница лишь в цифрах).Почему это произошло в течении пары дней не ясно.До этого в течении года было нормально. На одном форуме посоветовали изменить файл .htaccess и сделать переадресацию с www.art-eda.info на Host:art-eda.info (без www). Не совсем понимаю — имеет ли это отношение к вопросу. Но все попытки добавить в файл роботса правило редиректа приводят к ошибке — «циклическая переадресация» и сайт становиться не доступен.Не могли бы вы помочь решить проблему, что либо посоветовать? Заранее благодарю.

    Ответить
    • Виталий Кириллов:

      Витас, советую настроить индексацию сайта по моей статье. Файл .htaccess по-моему здесь не причем.

      Ответить
  40. Alexey:

    Виталий, здравствуйте!

    На днях добавил к ссылке приставку .html

    В поисковике сайт проиндексирован и ссылки выглядят так:

    janssenspartner.com/property/870-luxurious-semi-detached-villas-in-villajoyosa-costa-blanca-spain/

    Новая ссылка соответственно выглядит так:

    janssenspartner.com/property/870-luxurious-semi-detached-villas-in-villajoyosa-costa-blanca-spain.html

    При переходе из поисковика на сайт переадресация не происходит и попадаю на 404.

    Что можно применить для устранения этой проблемы?

    Ответить
    • Виталий Кириллов:

      Здравствуйте! А что Вы предприняли для переадресации?

      Ответить
      • Alexey:

        Не предпринимал никаких действий. Ничего не нашел, как сделать переадресацию. Вот и спрашиваю у Вас совет.

        В Platinum SEO Pack включена функция Automatically do 301 redirects for permalink changes, но это видать не для этого.

        Ответить
        • Виталий Кириллов:

          Alexey, Ваш блог еще очень молодой и не стоит устраивать лишние редиректы. Лучше дождитесь пока поисковики заново проиндексируют Ваши статьи и старые URL сами выпадут из поисковой выдачи.

          Ответить
          • Alexey:

            Сначала тоже так подумал. Хотел на некоторое время установить переадресацию. Значит буду ждать.

            Спасибо!

            Виталий, второе Ваше письмо gmail занес в спам:

            Почему это письмо попало в папку «Спам»? Оно похоже на сообщения, которые фильтры ранее распознавали как нежелательные.

            Ответить
            • Виталий Кириллов:

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

              Ответить
  41. Алена:

    Виталий, вечер добрый!
    Моя клиентка решила сменить доменное имя сайта. Убрана вся информация, нет вордпресса, в корне в файле .htaccess прописан следующий код:

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ — [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    RewriteRule (.*) http://larisamelihova.com/$1 [R=301,L])
    # END WordPress

    Что сделано не так? Нужно было не сносить ворпдресс? или нужно было оставить папку www и в нее поместить файл .htaccess? Чего я только не пробовала — у меня не получается… Заранее спасибо, буду ждать ответ!

    Ответить
    • Виталий Кириллов:

      Алена, вы пропишите простую переадресацию, как показано в статье и уберите из .htaccess все лишнее.

      Ответить
  42. Дмитрий:

    Здравствуйте,Виталий! Наконец то нашёл рабочий (не заброшенный) блог, радует. Ситуация такая. Хочу поменять urlы отдельных страниц сайта на более правильные ЧПУ. Пытаюсь сделать 301 редирект в файле .htaccess. Мне не совсем понятно как правильно прописать адреса. У Вас написано «Redirect 301 /путь/пост.html http://новый сайт.com/пост.html«, где «путь/пост.html»=»мой сайт.ru/пост.html»? Я правильно Вас понял? Заранее благодарю.

    Ответить
    • Виталий Кириллов:

      Здравствуйте Дмитрий!
      Моно так:
      Redirect 301 /путь/старый URL.html http://сайт/путь/новый URL.html

      Ответить
      • Дмитрий:

        Спасибо, за ответ. Но здесь вроде редирект на новый сайт, а мне нужен редирект некоторых страниц. Я поменял УРЛы некоторых страниц, они вроде регионально не плохо катируются. Содержание страниц не меняется.

        Ответить
      • Дмитрий:

        Да и не совсем понятно, /путь/-WTF?)))))

        Ответить
  43. Дмитрий:

    Всё такие не работает блог. Жаль

    Ответить
  44. Алексей:

    Здравствуйте, Виталий!
    Подскажите чайнику как прописать 301-й редирект. Как будет выглядить запись?
    СТАРЫЙ ЛИНК: www.рек-арт.рф/index.php?option=com_content&view=article&id=48&Itemid=225
    НОВЫЙ ЛИНК: www.рек-арт.рф/products/pos-materialy-oformlenie-mest-prodazh/mobilnye-stendy.html

    Ответить
    • Виталий Кириллов:

      Здравствуйте Алексей!
      Попробуйте так:
      Redirect 301 index.php?option=com_content&view=article&id=48&Itemid=225 www.рек-арт.рф/products/pos-materialy-oformlenie-mest-prodazh/mobilnye-stendy.html

      Ответить
  45. Артём:

    Добрый день Виталий!
    Я немного не понял.
    Обычно если есть SSL, направляют на него, а не с него.
    Для чего использовать защищенное соединение, что бы с него перенаправлять на обычное?
    Я думаю если используется SSL и настроено защищенное соединение наоборот нужно перенаправлять с http:// на https://
    Объясните пожалуйста!

    Ответить
    • Виталий Кириллов:

      Да вовсе не обязательно применять данный редирект. Это я привел как пример.

      Ответить
  46. myhelpers:

    301 редирект для мультиязычного сайта на Joomla 3 c 303 редиректом

    Здравствуйте, уважаемые!

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

    domain.ru -с русским языком
    domain.ru/ru/-русская версия сайта(является основным языком сайта)
    domain.ru/en/-английская версия сайта
    domain.ru/de/-немецкая версия сайта

    и если средствами Joomla 3 удалять префикс /ru/ из адресной строки, то срабатывает 303 редирект, что есть нехорошо, т.к. для SEO нужен 301 редирект.
    Если же не убирать префикс в настройках Joomla 3, то будет существовать domain.ru/ru/ и domain.ru с русским языком, т.е. дубли.
    Как посредством .htaccess убрать префикс /ru/, т.е. сделать 301 редирект с domain.ru/ru/ -> domain.ru и чтобы в последующем переключение языков на сайте было корректным.

    В течение 2-x недель поиска информации в интернете опробовал разные куски кода в htaccess, но рабочего варианта так и не нашел.
    Распишите, пожалуйста, подробно как решить эту проблему, т.к. с этим вопросом не могут справится куча народа, как в русскоязычном сегменте интернета, так и зарубежом, либо опишите другие возможные варианты решения. Если вам несложно, то вышлите мне решение на почту myhelpers@mail.ru , чтобы быстрее смог его реализовать.
    Если для кого-то это тривиально, то простите за незнание! 🙂

    Ответить
  47. Олеся:

    Здравствуйте, Виталий, мой файл .htaccess состоит из следующего кода:

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ — [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    Основной адрес сайта с www , какой код из вашего поста мне нужно вставить в этот файл для переадресации?
    …если я пишу свой адрес сайта в строке браузера без www , то меня тут же перекидывает на адрес с www , хотя у меня еще не стоит кода для переадресации, только в файле robots.txt прописан host: www.mysite.ru , поэтому меня перекидывает? и нужно ли в моем случае прописывать код переадресации?

    Ответить
  48. Олеся:

    в яндекс-вебмастере у меня указано главное зеркало с www... в гугле я не смогла разобраться по вашей статье как это сделать потому как там уже совсем другой интерфейс и я так и не нашла где указывать зеркало…

    Ответить
    • Виталий Кириллов:

      Олеся, раз Вы указали с www, так может и не менять уже…

      Ответить
      • Олеся:

        я как-бы и не собиралась менять, а только не пойму в моем случае мне нужно 301 ридерект в файле .htaccess прописывать или нет?

        Ответить
        • Виталий Кириллов:

          Олеся, Ван нужен этот код — перенаправление с без www на с www.

          Ответить
          • Олеся:

            если я вот такой код проставлю, будет правильно(указав свой домен) ?:

            # BEGIN WordPress

            RewriteEngine On
            RewriteBase /
            RewriteRule ^index\.php$ — [L]
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteCond %{REQUEST_FILENAME} !-d
            RewriteRule . /index.php [L]
            Options +FollowSymLinks
            RewriteCond %{HTTP_HOST} ^сайт\.com$ [NC]
            RewriteRule ^(.*)$ http://www.сайт.com/$1 [R=301,L]

            # END WordPress

            Ответить
            • Виталий Кириллов:

              Думаю да.

              Ответить
  49. Андрей:

    Здравствуйте, Виталий.
    У меня вопрос следующий. Вчера сделал 301 редирект страницы, с этим все ок. Как поисковики отнесутся к этому, ведь скажем была страница «а», стала «б». Ссылки купленные на страницу «а» перейдут на страницу «б». не знаю правильно ли я изложил.
    Попытаюсь еще по другому, чтобы Вы меня поняли:
    что было: www.site/aaa
    стал: www.site/bbb

    Ответить
  50. Дмитрий:

    Подскажите пожалуйста, правильно ли я делаю.
    У меня есть сайт (домен1) с 2-мя зеркальными доменами (домен2, домен3).

    Мне нужно:
    1) перенаправить ВСЕ домены «с www» на «без www»
    2) перенаправить зеркала на главный домен1

    Прописываю так:

    Options +FollowSymlinks
    RewriteEngine On
    RewriteBase /

    AddDefaultCharset utf-8

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

    RewriteCond %{HTTP_HOST} ^www\.домен1\.ru$ [NC]
    RewriteRule ^(.*)$ http://домен1.ru/$1 [R=301,L]

    RewriteCond %{HTTP_HOST} ^www\.домен2\.com\.ua$ [NC]
    RewriteRule ^(.*)$ http://домен1.ru/$1 [R=301,L]

    RewriteCond %{HTTP_HOST} ^домен2\.com\.ua$ [NC]
    RewriteRule ^(.*)$ http://домен1.ru/$1 [R=301,L]

    RewriteCond %{HTTP_HOST} ^www\.домен3\.xn--p1ai$ [NC]
    RewriteRule ^(.*)$ http://домен1.ru/$1 [R=301,L]

    RewriteCond %{HTTP_HOST} ^домен3\.xn--p1ai$ [NC]
    RewriteRule ^(.*)$ http://домен1.ru/$1 [R=301,L]

    Или можно сделать гораздо проще?

    Ответить
    • Виталий Кириллов:

      Дмитрий, мне не приходит на ум более простого варианта.

      Ответить
  51. Андрей:

    Здравствуйте, Виталий! Помогите пожалуйста, все перепробовал, но может просто не хватает знаний. У меня в файле htaccess сделан редирект с http на https следующим образом:

    RewriteEngine On
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

    Так вот проблема в следующем, не могу убрать перенаправление на https с одной из страниц сайта чтобы работала форма обратной связи. Адрес страницы следующего вида: http(точнее https после)://site.ru/page/page.html

    Ответить
  52. Андрей:

    День добрый!

    В рамкамх одного домена (есть старый трастовый сайт, хочу обновить дизайн но сохранить ссылочность, но не могу сохранить преджнюю иерархию каталога).
    Есть /сайт/раздел-1/раздел-2/страница-1..n.html будет /сайт/раздел-3/страница-1..n.html
    Можно сделать на все разделы
    RedirectMatch 301 ^/раздел-1/раздел-2/ http://сайт/разел3/
    или нужно так:
    Redirect 301 /раздел-1/раздел-2/страница-1.html http://сайт/разел3/странца-1.html
    Redirect 301 /раздел-1/раздел-2/страница-2.html http://сайт/разел3/странца-2.html
    Redirect 301 /раздел-1/раздел-2/страница-n.html http://сайт/разел3/странца-n.html

    Спасибо!

    Ответить
  53. Ангелина:

    Добрый день, Виталий!
    Зачитываюсь Вашими статьями и именно по ним делаю свой первый сайт на WordPress. Спасибо за Ваш труд!

    Буду очень признательна, если Вы уделите мне немного времени, чтобы разобраться с вопросом.
    Гугл начал сканировать сайт и увидел ошибку 404 по такой ссылке: site.com(тут мой домен)/m/
    Я так понимаю, это относится к мобильным телефонам.
    Будьте добры, подскажите, что в таком случае делать? Закрыть этот путь для индексации, через robots.txt или сделать перенаправление куда-то (и как это прописать в .htaccess)?

    Заранее благодарна за ответ!

    Ответить
    • Виталий Кириллов:

      Видимо, в Вашем шаблоне есть такая ссылка. Попробуйте сделать переадресацию следующим образом:
      Redirect 301 /domen/m http://domen/

      Ответить
      • Ангелина:

        Виталий, спасибо большое за ответ!

        Получилось это сделать при таком тексте:
        Redirect 301 /m http://домен.com/

        Ответить
  54. Slavik:

    Здравствуйте, а если делать 301 редирект с сайта с тиц и пр 0, на сайт с тиц и пр, например 100 на 2, то показатели не упадут?

    Ответить
    • Виталий Кириллов:

      Здравствуйте! Нет, не упадут.

      Ответить
  55. Игорь:

    Здравствуйте, Виталий.
    Я раньше делал редирект с www на без www и все прекрасно работало. Сейчас заметил, что перенаправление не работает, хотя вроде все прописал правильно. Не подскажете может это связано с переездом на VPS (Digitalocean)? Еще установил плагин защиты All In One WP Security, который тоже делает записи в файле, они могут конфликтовать?
    Спасибо.

    Ответить
    • Виталий Кириллов:

      Трудно сказать, возможно связано с переездом. Пишите в службу поддержки.

      Ответить
  56. Влад:

    День добрый У меня такая проблема может поможете Любая страница сайта открывается по тысяче адресов Пример Страница сайт/ page может открываться как сайт/ page/2222/ , сайт/ page/3333 , сайт/ page/? ну и так далее Как можно устранить эту беду
    Советовали такой код
    RewriteCond %{REQUEST_URI} ^(.*)0-9=
    RewriteRule ^(.*)0-9=(.*)$ $1 [R=301,L]
    Но не помогает

    Ответить
    • Виталий Кириллов:

      Здравствуйте Влад! Вот почитайте эту статью.

      Ответить
  57. Татьяна:

    Виталий, здравствуйте! У меня такая ситуация: при вводе в строку запроса google адреса сайта без www Результатов: примерно 8 080 (0,35 сек.), при вводе в строку запроса google адреса сайта с www Результатов: примерно 792 000 (0,72 сек.). В этом случае советуют настроить 301 редирект на сайт с www (с большим количеством запросов). Но, главным зеркалом у меня является сайт inf-teh-lotos.ru и в robots.txt Host: inf-teh-lotos.ru. Не подскажите, как мне быть в этой ситуации? С ув. Татьяна.

    Ответить
    • Виталий Кириллов:

      Здравствуйте Татьяна!
      1. В robots.txt в дериктиву Host добавить www,
      2. Указать главное зеркало с www в Яндекс вебмастере и в Гугл вемастере,
      3. В адимнке WordPress в общих настройках прописать адрес сайта с www — это и будет редирект всех страниц.
      Все просто.

      Ответить
      • Татьяна:

        Виталий, спасибо за ответ. При регистрации в Google в инструментах для веб-мастеров я, по совету опытных людей, выбрала пункт «Не устанавливать основной домен». Видимо по этому и сложилась ситуация, которую я ранее описывала. Подскажите, какой из вариантов правильнее и рациональнее: в настройках Google выбрать вариант «Отображать URL-адреса как http://inf-teh-lotos,ru» или же выбрать Ваш вариант: менять всё в Яндексе. Заранее благодарна. Татьяна.

        Ответить
        • Виталий Кириллов:

          Здравствуйте Татьяна! Если вы выбрали вариант без www? то конечно надо указать его и в Гугле и в Яндексе.

          Ответить
  58. Александр:

    Виталий, доброго времени суток! У меня получились следующее. Новый сайт с WWW добавлен в аддурилки Гугля и Яндекса. Гугле его почти сразу проиндексировал, яндекс молчит. Затем пришло понимание, что зря я сайт c WWW выложил, потому как это отмирает. Решение удалять полностью сайт с гугля отвалилось — долго. В гугле добавил домен без WWW, сделал его зеркалом. Теперь в поиске гугля сайт ищется без WWW, при проверке уникальности кусочка текста с сайта прога Etxt ссылается на сайт с WWW. Вот я уже голову сломал, как лучше индексировать в яндексе, с WWW или без? Еще есть нюанс, еще до регистрации в Гугле контент с сайта был сохранен в сервисе уникальности контента яши от имени сайта с WWW. Вот сразу не подумал, теперь голову ломаю, как бы мой сайт после индексации у яши последнее место в выдаче не занял. Сайт с полностью уникальным контентом, будет грустно если так. Конечно всё соберу в зеркало, но как эта вся возня повлияет на старт сайта у яши? Хотелось бы узнать ваше мнение по этому поводу, уважаемый Виталий. Что бы вы сделали в этой ситуации?

    Ответить
    • Виталий Кириллов:

      Здравствуйте Александр!
      Особой разницы нет с www сайт или без. Для Яндекса, самое главной указать директиву Host с основным зеркалом в файле robots.txt ну и конечно поставить галочку в вебместере.
      Для Гугла также укажите на основное зеркало в вебмастерской.
      Если Ваш сайт на WordPress, то в Настройках->Общие укажите домен без www и включиться встроенный редирект с www на без www.

      Ответить
      • Александр:

        Так и сделал, всё работает, спасибо за ответ.

        Ответить

Оставить комментарий

Внимание комментатор! Прежде чем вставить: HTML, JavaScript или PHP код в свой комментарий, преобразуй его в html сущность!

Subscribe without commenting

» Подписаться на комментарии по RSS