Що таке 301 редирект і чому він критично важливий для вашого сайту
У світі веб-розробки та пошукової оптимізації (SEO) часто виникає потреба змінити адресу веб-сторінки або навіть перенести весь сайт на новий домен. Проте просто видалити стару сторінку або відмовитися від старого домену — це шлях до втрати трафіку, позицій у пошуковій видачі та розчарування користувачів. Саме тут на допомогу приходить 301 редирект (постійне перенаправлення), який є одним з найважливіших інструментів для підтримки здоров’я вашого веб-ресурсу.
301 редирект – це код стану HTTP, який інформує браузери та пошукові системи про те, що запитувана сторінка або ресурс був назавжди переміщений на нове місце. Це означає, що пошукові системи, такі як Google, переносять більшу частину авторитету (так званої “ваги посилань” або “link juice”) зі старої URL-адреси на нову, зберігаючи при цьому ваші SEO-здобутки. Для користувачів це перенаправлення відбувається автоматично та непомітно, забезпечуючи безперешкодний доступ до потрібного контенту.
Без правильного використання 301 редиректу ви ризикуєте отримати безліч “битих” посилань (404 помилок), що негативно позначиться на користувацькому досвіді та суттєво погіршить позиції вашого сайту в пошукових системах. У цій статті ми детально розглянемо, коли і, найголовніше, як зробити 301 redirect, щоб забезпечити плавність переходу та зберегти цінність вашого сайту.

Коли потрібно використовувати 301 редирект
Існує безліч сценаріїв, коли застосування 301 редиректу є обов’язковим. Розуміння цих ситуацій допоможе вам уникнути потенційних проблем і максимально ефективно використовувати цей інструмент:
-
Переїзд сайту на новий домен
Якщо ви вирішили повністю змінити доменне ім’я свого сайту (наприклад, з example.com на newexample.com), 301 редирект є ключовим. Він гарантує, що весь трафік зі старого домену буде автоматично перенаправлятися на новий, а пошукові системи зможуть переіндексувати ваші сторінки та передати їм накопичений авторитет.

-
Зміна структури URL-адрес
При переробці структури URL-адрес на сайті (наприклад, з example.com/category/product.html на example.com/products/product-name), 301 редиректи необхідні для перенаправлення старих URL на нові. Це зберігає всі внутрішні та зовнішні посилання, які вказують на старі адреси.
-
Об’єднання дубльованого контенту
Часто один і той самий контент може бути доступний за різними URL-адресами, що створює проблему дублювання контенту для пошукових систем. Типові приклади:
-
Версії з “www” та без “www”: example.com та www.example.com. Виберіть одну канонічну версію та перенаправте іншу за допомогою 301.
-
Версії з HTTP та HTTPS: http://example.com та https://example.com. Після переходу на HTTPS завжди перенаправляйте HTTP-версію на HTTPS.
-
Слеші наприкінці URL: example.com/page/ та example.com/page. Виберіть одну версію (зі слешем або без) та перенаправте іншу.
-
Індексні сторінки: example.com/ та example.com/index.html. Зазвичай перенаправляють index.html на кореневий домен.
301 редиректи допомагають консолідувати всі ці версії в одну, уникнувши “штрафів” за дублювання.
-
-
Видалення або заміна старих сторінок
Якщо ви вирішили видалити стару, неактуальну сторінку, але на неї ведуть зовнішні посилання або вона все ще індексується пошуковими системами, краще зробити 301 редирект на найбільш релевантну існуючу сторінку. Це дозволить зберегти цінність вхідних посилань і направити користувачів на корисний контент, замість того, щоб вони бачили помилку 404.
-
Виправлення “битих” посилань
Якщо ви виявили “биті” посилання на вашому сайті або зовнішні посилання, які ведуть на неіснуючі сторінки, налаштування 301 редиректів дозволить вам виправити їх і покращити користувацький досвід та SEO.
301 redirect як зробити: основні методи реалізації
Існує кілька способів налаштування 301 редиректу, залежно від типу вашого веб-сервера та системи управління контентом (CMS). Розглянемо найпоширеніші та найефективніші методи.
Редирект htaccess: використання файлу .htaccess (для Apache)
Файл .htaccess — це потужний конфігураційний файл, який використовується на веб-серверах Apache. Він дозволяє керувати різними аспектами поведінки сервера на рівні директорій, включаючи перенаправлення. Це один з найпоширеніших і гнучких способів, 301 redirect як зробити.
Перш ніж редагувати файл .htaccess, завжди створюйте його резервну копію. Неправильні зміни можуть призвести до непрацездатності всього сайту. Знайти файл .htaccess можна в кореневій директорії вашого сайту (public_html, www або htdocs) за допомогою FTP-клієнта або файлового менеджера хостингу. Якщо ви не бачите його, переконайтеся, що у вас увімкнене відображення прихованих файлів.
Ось кілька поширених прикладів налаштування редиректів у файлі .htaccess:
-
Перенаправлення однієї сторінки на іншу
Цей метод найпростіший і підходить для перенаправлення окремих, конкретних URL-адрес.
Для перенаправлення старої сторінки “стара-сторінка.html” на нову “https://www.example.com/нова-сторінка.html” використовуйте наступний рядок:
Redirect 301 /стара-сторінка.html https://www.example.com/нова-сторінка.htmlАбо якщо нова сторінка знаходиться на тому ж домені:
Redirect 301 /стара-сторінка.html /нова-сторінка.htmlЗверніть увагу, що шлях до старої сторінки починається зі слеша і є відносним до кореня вашого домену, тоді як цільова URL може бути повною або відносною.
-
Перенаправлення всього домену на інший
Якщо ви перенесли весь сайт з одного домену на інший, вам потрібно перенаправити всі сторінки старого домену на відповідні сторінки нового. Для цього використовуйте модуль RewriteEngine:
RewriteEngine OnRewriteCond %{HTTP_HOST} ^старий-домен.com$ [NC,OR]RewriteCond %{HTTP_HOST} ^www.старий-домен.com$ [NC]RewriteRule ^(.*)$ https://www.новий-домен.com/$1 [L,R=301,NC]Цей код перенаправляє всі запити з “старий-домен.com” (з www і без) на “https://www.новий-домен.com”, зберігаючи при цьому всі шляхи сторінок. Наприклад, old-domain.com/page.html буде перенаправлено на new-domain.com/page.html.
-
Перенаправлення з HTTP на HTTPS
Перехід на HTTPS є стандартом безпеки. Щоб переконатися, що весь трафік йде через зашифроване з’єднання, налаштуйте перенаправлення:
RewriteEngine OnRewriteCond %{HTTPS} offRewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]Цей код перенаправляє будь-який запит, зроблений по HTTP, на його HTTPS-еквівалент.
-
Перенаправлення з “non-www” на “www” (або навпаки)
Для консолідації трафіку та SEO-ваги, оберіть одну версію домену (з “www” або без) як основну. Наприклад, для перенаправлення з “non-www” на “www”:
RewriteEngine OnRewriteCond %{HTTP_HOST} ^example.com [NC]RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]Якщо ви хочете перенаправити з “www” на “non-www”:
RewriteEngine OnRewriteCond %{HTTP_HOST} ^www.example.com [NC]RewriteRule ^(.*)$ https://example.com/$1 [L,R=301] -
Перенаправлення зі слешем наприкінці URL або без нього
Щоб уникнути дублів для URL-адрес з або без слеша наприкінці, можна використовувати такі правила. Для додавання слеша:
RewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$RewriteRule ^(.*)$ /$1/ [L,R=301]Для видалення слеша (для файлів, не для директорій):
RewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)/$ /$1 [L,R=301]
Редирект за допомогою PHP (для CMS на PHP, наприклад WordPress)
Для сайтів, що працюють на PHP (наприклад, WordPress), можна також налаштувати 301 редирект безпосередньо в коді PHP. Це менш бажаний метод, ніж .htaccess, оскільки він спрацьовує пізніше в процесі обробки запиту і може споживати більше ресурсів сервера. Проте, у деяких випадках, наприклад, для умовних редиректів на основі даних бази даних, це може бути корисним.
Щоб зробити редирект за допомогою PHP, розмістіть наступний код на початку PHP-файлу (до будь-якого виводу на екран), наприклад, у файлі functions.php вашої теми WordPress або безпосередньо у файлі сторінки, яку потрібно перенаправити:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://www.example.com/нова-сторінка");
exit();
?>
Цей код надсилає браузеру 301 статус і нову Location. Важливо, щоб перед цим кодом не було ніякого виводу (навіть пробілів), інакше редирект не спрацює.
Редирект через інтерфейс CMS (WordPress, Joomla, OpenCart тощо)
Багато сучасних CMS пропонують вбудовані функції або плагіни для керування редиректами. Це найзручніший спосіб для нетехнічних користувачів:
-
WordPress: Існують популярні плагіни, такі як “Redirection”, “Rank Math SEO” або “Yoast SEO”, які мають інтуїтивно зрозумілий інтерфейс для створення 301 редиректів. Ви просто вводите стару та нову URL-адресу, і плагін робить всю роботу за вас, генеруючи відповідні правила.
-
Joomla: Має вбудований компонент “Redirects”, який дозволяє керувати перенаправленнями.
-
Хостинг-провайдери та панелі управління: Більшість хостинг-панелей (cPanel, Plesk) мають розділ “Редиректи” або “Перенаправлення”, де ви можете легко налаштувати 301 редирект для окремих сторінок або цілих доменів, не працюючи безпосередньо з файлами .htaccess.
Редирект для Nginx
Якщо ваш сайт працює на веб-сервері Nginx (а не Apache), правила редиректу налаштовуються у файлах конфігурації Nginx (зазвичай nginx.conf або в окремих файлах конфігурації для кожного домену, наприклад, site.conf).
Для перенаправлення однієї сторінки:
location /стара-сторінка.html {
return 301 https://www.example.com/нова-сторінка.html;
}
Для перенаправлення всього домену:
server {
listen 80;
server_name старий-домен.com www.старий-домен.com;
return 301 https://www.новий-домен.com$request_uri;
}
Для перенаправлення HTTP на HTTPS:
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
Після внесення змін у конфігурацію Nginx, завжди необхідно перезавантажити сервер Nginx, щоб зміни набули чинності (наприклад, командою sudo systemctl reload nginx).
Як перевірити 301 редирект
Після налаштування будь-якого редиректу дуже важливо перевірити, чи він працює правильно. Неправильно налаштований редирект може завдати більше шкоди, ніж його відсутність.
-
Онлайн-інструменти: Існує безліч безкоштовних онлайн-інструментів для перевірки HTTP-заголовків, наприклад, “HTTP Status Code Checker” або “Redirect Checker”. Просто введіть стару URL-адресу, і інструмент покаже вам ланцюжок перенаправлень і фінальний статус.
-
Браузерні розширення: Деякі розширення для браузерів (наприклад, “Redirect Path” для Chrome) дозволяють бачити ланцюжок редиректів прямо у вашому браузері.
-
Інструменти розробника браузера: Відкрийте інструменти розробника (F12) у вашому браузері, перейдіть на вкладку “Network” (Мережа), потім перейдіть на стару URL-адресу. Ви побачите запит і відповідь із заголовком “301 Moved Permanently”.
Поширені помилки при використанні 301 редиректу
Навіть при знанні, як зробити 301 redirect, можна припуститися помилок, які можуть зашкодити вашому сайту:
-
Використання 302 редиректу замість 301: 302 редирект (Temporary Redirect) вказує на тимчасове переміщення сторінки, і пошукові системи не передають авторитет посилань у повній мірі. Завжди переконайтеся, що ви використовуєте саме 301 для постійних змін.
-
Створення ланцюжків редиректів: Це відбувається, коли URL-адреса A перенаправляється на B, B на C, а C на D. Кожен додатковий редирект уповільнює завантаження сторінки і може призвести до втрати SEO-ваги. Намагайтеся, щоб редирект був прямим (A -> B).
-
Редирект на нерелевантну сторінку: Перенаправляйте користувачів і пошукові системи на максимально релевантний контент. Якщо ви видаляєте сторінку про “червоні яблука”, не перенаправляйте її на сторінку про “блакитні банани”, якщо немає більш підходящої альтернативи. У деяких випадках краще залишити 404 помилку, ніж перенаправляти на абсолютно нерелевантний контент.
-
Забуття про оновлення внутрішніх посилань: Навіть якщо ви налаштували редиректи, завжди намагайтеся оновити всі внутрішні посилання на вашому сайті, щоб вони вказували на нові URL-адреси. Це зменшить навантаження на сервер і забезпечить більш швидкий доступ до контенту.
-
Відсутність резервної копії .htaccess: Завжди зберігайте резервну копію файлу .htaccess перед внесенням змін.
Висновок
301 редирект — це не просто технічний інструмент, це критично важливий елемент підтримки здоров’я вашого сайту, його видимості в пошукових системах та позитивного користувацького досвіду. Розуміння того, 301 redirect як зробити, і правильне його застосування допоможе вам уникнути багатьох проблем, пов’язаних зі зміною URL-адрес, переїздом доменів або консолідацією контенту.
Незалежно від того, чи використовуєте ви редирект htaccess, PHP-скрипти, інтерфейс CMS або налаштування Nginx, головне — це точність та уважність. Завжди перевіряйте працездатність редиректів після їх налаштування та дотримуйтесь кращих практик, щоб ваш сайт продовжував успішно розвиватися в онлайн-просторі.