Если вы перенесли страницу, поменяли адрес записи или убрали старый URL, без 301-редиректа часть трафика и ссылочного веса просто потеряется. Для WordPress это обычная задача: перенаправить старый адрес на новый так, чтобы пользователь и поисковый робот попадали туда, куда нужно, а не видели 404.
301 — это постоянный редирект. Его используют, когда старый адрес больше не должен открываться как основной. Если страница переехала навсегда, именно этот вариант нужен почти всегда. Временные перенаправления 302 для такой задачи не подходят.
Когда нужен 301-редирект
На практике редирект ставят в нескольких типичных случаях:
- страница получила новый URL после изменения структуры сайта;
- запись или страница была объединена с другой и старый адрес нужно убрать;
- сменился домен или протокол, например с
httpнаhttps; - нужно убрать дублирующий адрес и оставить один канонический вариант;
- старый материал удалён, но у него есть внешние ссылки или поисковый трафик.
Если у старого адреса нет замены, редирект всё равно может быть полезен, но только когда есть логичная новая страница. Если подходящей замены нет, лучше оставить 404 или 410, чем отправлять пользователя на случайную страницу.
Какой способ выбрать в WordPress
Для WordPress есть три рабочих подхода: через плагин, через настройки сервера и через код в .htaccess или конфигурации Nginx. Выбор зависит от того, есть ли у вас доступ к серверу и насколько часто вы будете управлять редиректами.
| Способ | Когда подходит | Плюсы | Минусы |
|---|---|---|---|
| Плагин | Если редиректов немного и нужен удобный интерфейс | Не требует правок сервера, легко управлять из админки | Лишний плагин, зависит от его качества |
.htaccess / Nginx | Если есть доступ к серверу и нужен быстрый, надёжный редирект | Работает на уровне веб-сервера, без нагрузки на WordPress | Нужно аккуратно редактировать конфигурацию |
| Код в теме или плагине | Если нужен точечный редирект по логике сайта | Гибко, можно завязать на условия WordPress | Требует разработки и тестирования |
Если задача обычная — перенести несколько страниц или поменять URL у записи — проще всего использовать плагин. Если редиректов много или они должны работать даже при проблемах с WordPress, лучше настраивать их на уровне сервера.
Самый простой вариант: плагин для редиректов
Для большинства владельцев сайтов это самый удобный путь. После установки плагина вы задаёте старый и новый адрес, а WordPress сам отдаёт ответ 301.
Логика настройки обычно одинаковая: указываете источник, целевой URL и тип перенаправления 301. После сохранения старый адрес должен вести на новый без промежуточных шагов.
Что важно проверить перед сохранением:
- новый URL действительно открывается и отдаёт нужную страницу;
- в адресе нет лишнего слэша, если на сайте используется другой формат;
- редирект не создаёт цепочку, когда старый адрес сначала ведёт на промежуточный, а потом ещё раз перенаправляется;
- не возникает петля, когда новый URL случайно перенаправляет обратно на старый.
Если вы часто меняете структуру ссылок, плагин удобен ещё и тем, что позволяет быстро править отдельные адреса без доступа к серверу. Но не стоит держать несколько плагинов, которые одновременно управляют редиректами: они могут конфликтовать между собой.
Редирект через .htaccess на Apache
Если сайт работает на Apache и у вас есть доступ к файлу .htaccess, редирект можно добавить вручную. Это хороший вариант, когда нужно перенаправить один или несколько адресов без установки плагина.
Перед правкой сделайте резервную копию файла. Ошибка в .htaccess может сделать сайт недоступным, поэтому редактировать его нужно аккуратно.
Для одного адреса правило выглядит так:
Redirect 301 /staryi-url/ https://example.com/novyi-url/Если нужен более гибкий вариант, используют модуль mod_rewrite:
RewriteEngine On
RewriteRule ^staryi-url/?$ https://example.com/novyi-url/ [R=301,L]Здесь старый путь /staryi-url/ будет перенаправлен на новый адрес. Важно указывать именно путь после домена, если правило размещается в .htaccess корня сайта.
Если вы меняете сразу много URL, правила лучше выносить в отдельный список и проверять по одному. Чем больше ручных правил, тем выше шанс ошибиться в слэше, регистре или порядке обработки.
Редирект на Nginx
На Nginx редиректы настраиваются в конфигурации сайта, а не в .htaccess. Если хостинг использует Nginx, WordPress сам по себе не сможет управлять такими перенаправлениями на уровне сервера.
Для одного адреса обычно используют такое правило:
rewrite ^/staryi-url/?$ https://example.com/novyi-url/ permanent;Или более точечно через return:
location = /staryi-url/ {
return 301 https://example.com/novyi-url/;
}После изменения конфигурации Nginx её нужно проверить и перезагрузить сервер. Это уже зона ответственности администратора или техподдержки хостинга. Если доступа к конфигу нет, проще использовать плагин.
Как не испортить редиректами структуру сайта
Самая частая ошибка — ставить редирект «на всякий случай» на главную страницу. Так делать не стоит. Если у старого URL была конкретная тема, пользователь должен попадать на максимально близкую по смыслу новую страницу, а не просто на главную.
Ещё одна проблема — цепочки редиректов. Например, старый адрес ведёт на промежуточный, а тот — ещё на один. Это лишняя задержка и лишний риск ошибок. Лучше сразу направлять на конечный URL.
Также не стоит смешивать разные варианты одного и того же адреса без системы. Если у вас есть версии со слэшем и без слэша, с www и без www, с http и https, нужно выбрать один канонический вариант и привести к нему весь сайт. Иначе редиректы будут конфликтовать.
Как проверить, что 301 работает правильно
После настройки обязательно проверьте ответ сервера. Недостаточно просто открыть ссылку в браузере: браузер может скрыть детали и показать уже конечную страницу.
Самый надёжный способ — посмотреть HTTP-ответ. Если есть доступ к консоли, можно использовать curl:
curl -I https://example.com/staryi-url/В ответе должен быть статус 301 Moved Permanently и заголовок Location с новым адресом. Если видите 200 OK, редиректа нет. Если 302 или 307, это временное перенаправление, а не постоянное.
Проверить можно и в браузере через инструменты разработчика: вкладка Network покажет цепочку запросов и конечный статус. Это удобно, если вы не работаете с консолью.
После проверки откройте старый URL в режиме инкогнито и убедитесь, что:
- страница не отдаёт 404;
- переход происходит сразу, без лишних промежуточных адресов;
- новый URL открывается именно тот, который вы планировали;
- в адресной строке не остаётся старый адрес.
Что делать после переноса страницы
Когда редирект уже работает, обновите внутренние ссылки на сайте. Если в меню, статьях или блоках остались старые URL, пользователи и поисковые роботы будут каждый раз проходить лишний переход. Это не критично, но лучше сразу заменить ссылки на новый адрес.
Если старый материал был удалён окончательно и замены нет, не направляйте его на случайную релевантную страницу. В таком случае лучше оставить корректный ответ сервера, чем вводить пользователя в заблуждение.
Для массового переноса полезно сначала составить список старых и новых адресов, а потом проверять их по одному. Так проще заметить ошибки в структуре и не пропустить редирект, который уходит не туда.
Если вам нужно регулярно управлять редиректами и другими SEO-настройками на сайте, иногда удобнее вынести часть задач в отдельный инструмент вроде Clearfy Pro, но сам принцип остаётся тем же: старый адрес должен отдавать 301 и вести на правильную конечную страницу.
В итоге рабочая схема простая: выбираете подходящий способ, настраиваете постоянный редирект, проверяете HTTP-ответ и следите, чтобы не было цепочек и петлей. Тогда смена URL не обернётся потерей трафика и лишними ошибками 404.