Как сделать 301 редирект .htaccess для статей при смене URL

Вопрос: У статьи сменился адрес ссылки. Как не потерять посетителей?

Ответ: В данном случае поможет 301 редирект, который можно задать в файле .htaccess и не использовать при этом плагины. Можете почитать об этом в справке Google или Яндекс.

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

Где найти файл .htaccess

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

Чтобы открыть файл .htaccess для редактирования используйте встроенный в Windows Блокнот. Пользователи программы Total Commander могут просто на нем нажать клавишу F4.

Как задать 301 редирект в .htaccess

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

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

RewriteEngine on
RewriteRule  ^staryi-url/$ /novyi-url.html [R=301,L]

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

Например:

У меня старая статья размещалась по адресу http://mojwp.ru/staryi-url/. Теперь я захотел вместо / в конце поставить .html и слегка подредактировать сами символы в ссылке на http://mojwp.ru/novyi-url.html.

В коде выше мы видим, что:

  • мы нигде не пишем адрес сайта http://mojwp.ru, т.к. это внутренний редирект (перенаправление)
  • в старом адресе статьи я в начале не ставлю знак /, а вместо него стоит ^
  • в новом адресе я уже ставлю знак / и меняю адрес на нужный мне, т.е. если требуется смена символов/букв ссылки и дописываю в конце .html (по необходимости)

Вы можете проставить сколько угодно строк для редиректа страниц друг за другом. Пример:

RewriteEngine on
RewriteRule  ^staryi-url/$ /novyi-url.html [R=301,L]
RewriteRule  ^staryi-url2/$ /novyi-url2.html [R=301,L]
RewriteRule  ^staryi-url3/$ /novyi-url3.html [R=301,L]
RewriteRule  ^staryi-url4/$ /novyi-url4.html [R=301,L]

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

Наглядно посмотреть как прописать 301 редирект в htaccess можете в видео ниже.

Привет. Меня зовут Виталик и я автор этого блога, а так же Магазина WordPress https://wp-r.ru/.


Отблагодарить Z888279575784 R109400923968 или ЯД 41001651742138

Оказываю услуги по созданию и настройке сайтов на WordPress (верстка, натяжка).

Мои Контакты. Я в Twitter @mojWP. Смотри на Youtube. Читай RSS блога.

Опубликовано 11 комментариев
  1. Алексей says:

    Спасибо друг выручил.

  2. Руслан says:
    http://rokotbox.com/

    Здравствуйте Ув.Виталий. У меня вопрос. Два месяца искал, прокуривал все видео и форумы, к счастью случайно Ваше видео увидал, сразу все понял, все чотко,кратко,емко а главное что понял теперь))) Вопрос:Ссылка вставляется вместе с доменом (скопировал адрес стр. на которую хочу перенаправить) можно с доменом или удалить и оставить только урлу. (У меня все урлы стр. так копируются) Огромное спасибо Вам за все. С Ув. Рус

    • Виталий says:
      http://mojWP.ru/

      Добрый.
      Без домена, если вы в рамках этого сайта редирект делаете.

  3. Руслан says:

    Ясно, пожалуйста проверьте правильно?

    RewriteEngine on
    RewriteRule ^avto-diler-vaz/diler-vaz-v-moskve/$ /vaz-lada-granta.html [R=301,L]
    # BEGIN WordPress

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

    # END WordPress

    • Виталий says:
      http://mojWP.ru/

      Если проверили работоспособность - значит правильно

  4. Руслан says:

    после редиректа с списка на 17-й стр. яндекса страница пропала до 100-й дошел не нашел, почему так?

    • Виталий says:
      http://mojWP.ru/

      Подобный вопрос вам нужно задать техподдержке Яндекс

  5. Руслан says:

    Виталий, у меня не перекидывает на нужную стр, должно ли время пройти может, чтоб яндекс засчитал редирект или...? По сути я правильно сделал? Виталий может у Вас есть на заметке веб-мастер который поможет за отдельную плату+ покажет разок как правильно делать, а то не дело постоянно просить кого-то!? Спасибо большое

    • Виталий says:
      http://mojWP.ru/

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

  6. Галина says:
    http://moimirprekrasen.ru

    Добрый вечер Виталий. Перечитала кучу сайтов и видео пересмотрела на эту тему.Разобралась только сейчас с вашей помощью, спасибо. Не понятно только одно, зачем делать редирект на все существующие записи и страницы, если идёт замечание робота,что нет редиректа 301, как в этом случае быть, если адрес записи не менялся.

  7. Анатолий says:
    http://15wmz.com

    При глобальной смене структуры сайта - можно прописать код для редиректа со старых адресов?
    с /%post_id%.htm на /%category%/%postname%.htm

Не держи в себе. Выскажись.

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

© 2011-2017 | mojwp.ru | Копирование материала разрешено только с письменного согласия
WordPress: 23.12MB | MySQL:75 | 0,418sec
Премиальные плагины для CMS WordPress
Магазин WordPress WP-R.ru
Спасибо, не показывайте мне эту штуку больше!
Смотри мои обучающие видео на YouTube
Иван только что купил плагин ELT https://wp-r.ru/plaginy/elt.html