301 редирект та інші: повний гайд про редиректи

Редиректи — це фундаментальна частина технічного SEO, яку часто налаштовують неправильно. Один невірно обраний тип редиректу може коштувати вам втрати посилального вагу, плутанини у пошукових роботів або дублювання контенту. У цьому гайді розбираємо всі типи HTTP-редиректів: 301, 302, 307, 308 та meta refresh — коли що використовувати, як правильно налаштувати і яких помилок уникати.
301 редирект передає 90–99% посилального вагу — але тільки якщо він правильно налаштований і не утворює ланцюжків.

Що таке HTTP-редирект
HTTP-редирект — це інструкція сервера, яка повідомляє браузеру або пошуковому роботу: «цей ресурс знаходиться за іншою адресою». Сервер відповідає кодом статусу 3xx та новою URL у заголовку Location. Браузер або бот автоматично переходить на нову адресу.
Редиректи використовують при: зміні структури URL, переїзді на новий домен, видаленні застарілих сторінок, переходу з HTTP на HTTPS, об’єднанні двох сайтів після ребрендингу.
301 редирект — постійний
301 — найважливіший тип редиректу для SEO. Він означає, що ресурс переміщено назавжди. Google отримує цей сигнал і:
- Оновлює свій індекс — замінює стару URL на нову
- Передає накопичений посилальний вагу (PageRank) на нову сторінку
- Перестає краулити стару URL через певний час
Передача link equity: за даними Google — від 90% до 99%. Втрати мінімальні. Саме тому 301 є стандартом для будь-якої постійної міграції URL.
302 редирект — тимчасовий
302 означає тимчасове переміщення. Google інтерпретує це так: «оригінальна URL залишається активною, просто зараз вона тимчасово відсутня». Наслідки:
- Стара URL зберігається в індексі Google
- Link equity не передається на нову URL
- Анкорні тексти зовнішніх посилань залишаються прив’язаними до старої URL
Коли доречний 302: A/B-тестування (Google Optimize, VWO), тимчасовий технічний редирект під час обслуговування, геотаргетинг (тимчасово показати іншу версію).
307 та 308 редиректи
307 — Temporary Redirect (HTTP/1.1)
Функціонально аналог 302, але з важливою відмінністю: зберігає метод HTTP-запиту. Якщо клієнт відправив POST-запит, після 307 він знову відправить POST (а не GET, як при 302). Актуально для API і форм. З точки зору SEO — аналогічний 302.
308 — Permanent Redirect (HTTP/1.1)
Постійний аналог 307. Зберігає метод запиту і передає link equity як 301. Підтримується сучасними браузерами, але менш поширений. Для звичайних веб-сторінок 301 залишається кращим вибором.
Meta Refresh — чому варто уникати
Meta refresh — це HTML-тег у <head> сторінки: <meta http-equiv="refresh" content="0; url=/нова-url">. Технічно це не HTTP-редирект, а інструкція браузеру на рівні HTML. Проблеми для SEO:
- Повільна обробка пошуковими роботами
- Погана передача link equity (значно гірше, ніж 301)
- Затримка видимості для користувача (якщо content > 0)
- Не всі боти коректно його обробляють
Використовуйте meta refresh тільки коли немає доступу до серверної конфігурації.
Коли який редирект використовувати
- 301 — постійна зміна URL, міграція домену, HTTPS, об’єднання сторінок, редизайн структури
- 302 — тимчасова недоступність, A/B-тест, тимчасовий геотаргетинг
- 307 — тимчасовий редирект з необхідністю зберегти HTTP-метод (API)
- 308 — постійний редирект з необхідністю зберегти HTTP-метод (рідко)
- Meta refresh — тільки якщо немає доступу до сервера
Як налаштувати 301 редирект
Apache (.htaccess)
Найпоширеніший спосіб для хостингів на Apache:
RewriteEngine On
RewriteRule ^стара-сторінка/?$ /нова-сторінка/ [R=301,L]Для цілого домену (зміна домену):
RewriteCond %{HTTP_HOST} ^старий-домен\.com [NC]
RewriteRule ^(.*)$ https://новий-домен.com/$1 [R=301,L]nginx
В блоці server файлу nginx.conf:
location = /стара-сторінка/ {
return 301 /нова-сторінка/;
}WordPress (без плагіну)
Додайте у functions.php:
add_action('template_redirect', function() {
if (is_page('стара-сторінка')) {
wp_redirect('/нова-сторінка/', 301);
exit;
}
});WordPress (з плагіном)
Плагін Redirection (безкоштовний, 2+ млн установок) дозволяє управляти редиректами через адмін-панель без доступу до файлів сервера. Підтримує regex, 301/302/307/308, та зберігає лог звернень.
Типові помилки з редиректами
Ланцюжки редиректів
Виникають, коли URL-A → URL-B → URL-C → URL-D. Кожен додатковий перехід:
- Збільшує час завантаження (~200–300мс на перехід)
- Витрачає crawl budget
- Може призводити до втрати частини link equity
Рішення: завжди вести напряму з A до фінальної URL-D. При аудиті перевіряйте всі ланцюжки через Screaming Frog.
Петлі редиректів
URL-A → URL-B → URL-A — нескінченна петля. Браузер поверне помилку «Too Many Redirects» (ERR_TOO_MANY_REDIRECTS). Типова причина: плутанина в .htaccess або конфлікт правил між плагінами WordPress.
Неправильний вибір 302 замість 301
Найпоширеніша помилка. Якщо сторінку видалено назавжди і встановлено 302 — Google продовжує зберігати стару URL в індексі, нова URL не отримує link equity. Перевіряйте тип редиректу за допомогою curl:
curl -I https://yoursite.com/стара-сторінка/Вплив редиректів на SEO
Передача PageRank
301 редирект передає накопичений PageRank практично повністю. Ключове слово — «накопичений». Якщо стара URL не мала беклінків — редирект не «подарує» авторитет новій. Він лише зберігає вже існуючий.
Crawl budget
Googlebot витрачає ресурси на обхід ланцюжків редиректів. На великих сайтах (10 000+ URL) некоректні ланцюжки можуть суттєво знижувати частоту краулінгу важливих сторінок. Спрощуйте ланцюжки і видаляйте застарілі редиректи.
Час до індексації
Після налаштування 301 Google може оновити індекс від 2 днів до 6 тижнів залежно від частоти краулінгу домену. Прискорити можна через Google Search Console: URL Inspection → Request Indexing.
Аудит редиректів
- Google Search Console: Coverage → Excluded → знайдіть «Redirect error» та «Excluded by noindex»
- Screaming Frog SEO Spider: безкоштовно до 500 URL. Reports → Redirects → Full Redirect Chain показує всі ланцюжки
- Ahrefs Site Audit: автоматично виявляє ланцюжки (3xx chains) і петлі
- httpstatus.io: онлайн-інструмент для перевірки одиночної URL без встановлення ПЗ
- curl:
curl -I --location URLпоказує всі переходи ланцюжку
Чек-ліст налаштування редиректів
- Визначено тип кожного редиректу (постійний чи тимчасовий)
- Для постійних переміщень використано 301, а не 302
- Перевірено, що редиректи не утворюють ланцюжків (A→B→C — виправити на A→C)
- Перевірено відсутність петель редиректів (ERR_TOO_MANY_REDIRECTS)
- HTTPS-редирект налаштовано на рівні сервера (не через meta refresh)
- Всі старі URL після міграції мають 301 на нові URL
- Sitemap.xml оновлено — у ньому лише фінальні URL (без редиректів)
- Internal посилання оновлено — ведуть напряму на фінальні URL
- Google Search Console: Coverage → перевірено помилки редиректів
- Screaming Frog: повний аудит ланцюжків виконано
- Перевірено HTTP-статус кожного редиректу через curl або httpstatus.io
- Запущено моніторинг позицій після міграції (тижні 2, 4, 8)
Поширені питання
Чим відрізняється 301 від 302 редиректу?
301 — постійний редирект, який передає 90–99% посилального вагу (link equity) на нову URL і сигналізує Google про постійне переміщення ресурсу. 302 — тимчасовий редирект, при якому Google зберігає оригінальну URL в індексі і не передає link equity. Якщо ви переносите контент назавжди — завжди використовуйте 301.
Скільки link equity передає 301 редирект?
За даними Google та незалежних досліджень, 301 редирект передає від 90% до 99% посилального вагу. Мінімальна втрата порівняно з прямою URL. 302 і meta refresh передають значно менше, тому для постійних переміщень 301 є стандартом.
Що таке ланцюжок редиректів і чому він шкідливий?
Ланцюжок редиректів — це коли URL-A веде на URL-B, яка веде на URL-C і так далі. Кожен додатковий перехід збільшує час завантаження, з’їдає crawl budget і може призводити до втрати link equity на кожному ланці. Google рекомендує мати не більше 1–2 редиректів у ланцюжку. Оптимально — завжди вести напряму до фінальної URL.
Як перевірити редиректи на сайті?
Найшвидший спосіб — Google Search Console: розділ Coverage → Excluded → знайдіть помилки редиректів. Для повного аудиту використовуйте Screaming Frog SEO Spider (безкоштовно до 500 URL): Reports → Redirects → Full Redirect Chain. Також можна використати онлайн-інструмент httpstatus.io або curl -I у командному рядку.
Чи можна використовувати 302 редирект замість 301?
Якщо зміна URL справді тимчасова (наприклад, технічне обслуговування або A/B-тест) — так. В усіх інших випадках — ні. Неправильне використання 302 замість 301 при постійній міграції призводить до того, що Google не оновлює індекс і продовжує показувати стару URL, а нова URL не отримує жодного посилального вагу.
Потрібен аудит редиректів або SEO-супровід міграції сайту? Spilno Agency виявить проблеми у ланцюжках редиректів та налаштує технічне SEO.
Тут будуть ваші коментарі
Щоб долучитися до обговорення, зареєструйтесь — це займе хвилину.
ЗареєструватисяВже є акаунт? Увійти
Залишились питання?


