Редирект – що це і як його налаштувати?

Редирект – що це і як його налаштувати?
Редирект – що це і як його налаштувати?

Редирект (перенаправлення) – це процес автоматичної переадресації користувача з однієї URL-адреси на іншу, що буває корисним при зміні URL-адреси сторінки, перенесення сайту на інший домен, виправлення помилок URL, забезпечення безпеки сайту тощо. Переадресація може бути виконано на рівні веб-сервера, коли він отримує запит від користувача, або на рівні коду сторінки, коли скрипт веб-сторінки відправляє запит на перенаправлення  користувача.

Методи переадресації

В залежності від цілей переадресації використовуються різноманітні методи перенаправлення, кожний з яких має свої особливості.

  1. Редирект (Redirect) – це метод, який забезпечує автоматичне переадресацію користувача з одного URL-адреси на інший. У редиректах є різні типи, такі як 301, 302, 307 тощо, які вказують на різні види перенаправлення.
  2. Meta Refresh – використовує тег HTML <meta> для автоматичного перенаправлення користувача на нову сторінку. Це може бути корисним, наприклад, при автоматичному оновленні сторінки після певного часу. Проте, цей метод має деякі недоліки, такі як незручність для користувачів і погіршення SEO, оскільки пошукові системи можуть сприймати це як шахрайство.
  3. JavaScript Redirect – цей метод використовує JavaScript для перенаправлення користувача на інший URL-адрес. Цей метод може бути корисним для переадресації користувача після заповнення форми або після виконання певних дій на сторінці, але може бути блокований браузерами з причин безпеки.
  4. Canonical Links – HTML-тег, який вказує пошуковим ботам на основний URL-адрес сторінки, який має бути індексований пошуковими системами. Канонічні посилання можуть бути корисними, коли на сайті є дублікати сторінок з різними URL-адресами, і допомагають уникнути дублювання контенту та покращити SEO.

Детальніше розглянемо метод Redirect, який важливий для пошукової оптимізації з точки зору збереження ваги та позиції сторінки, а отже, і органічного трафіку.

Види редиректів

Існує декілька кодів редиректування (HTTP redirection status codes) в протоколі HTTP, які описують статус перенаправлення від сервера до клієнта:

  • 301 Moved Permanently – цей код означає, що ресурс був переміщений на нову URL-адресу, та відповідний URL більше не існує, використовується для остаточних переміщень. Авторитет і позиції сторінки донора передаються сторінці акцептору, яка і буде присутня в індексі пошукових систем.
  • 302 Found – означає, що ресурс був тимчасово переміщений на нову URL-адресу, та відповідний URL може знову з’явитися в майбутньому. Отже, новий URL не індексуватиметься, а пошукові показники і налаштування залишаться на «старій» адресі.
  • 303 See Other – цей код означає, що клієнт повинен перейти до іншої URL-адреси, яку вказав сервер. Він використовується для повернення результатів запиту POST або PUT.
  • 304 Not Modified – цей код повертається, коли ресурс не був змінений з моменту останнього запиту, означає, що клієнт може використовувати кешовану версію ресурсу.
  • 307 Temporary Redirect – цей код аналогічний 302, але зберігається метод запиту HTTP, який був використаний під час початкового запиту. Використовується тільки тоді, коли клієнт повинен використовувати той же метод запиту HTTP для повторного запиту.
  • 308 Permanent Redirect – цей код подібний до 301, але зберігає метод запиту HTTP, який був використаний при першому запиті. Він повинен використовуватися тільки тоді, коли клієнт повинен використовувати той же метод запиту HTTP для повторного запиту.

Детальніша інформація, щодо 3хх кодів відповіді сервера, наведена в статті – Коди відповідей 3хх.

Приклади застосування 301 редиректів в .htaccess

Розглянемо найпоширеніші випадки використання 301 редиректів з прикладами їх реалізації в файлі конфігурації .htaccess, який можна знайти за допомогою FTP або через сервіси хостингу.

Зауважимо: внесення змін до .htaccess може призвести до помилок в роботі вашого сайту, отже, якщо у вас недостатньо досвіду, правильним буде звернутися до професіоналів.

301 редирект зі старої URL-адреси сторінки на нову

Якщо вам потрібно змінити адресу або видалити проіндексовану сторінку, використання 301 редиректу допоможе зберегти її позицію та вагу

Redirect 301 /old_url_addr /new_url_addr

301 редирект з одного домену на інший

Правило для налаштування перенаправлення усіх сторінок старого домену на новий, за умови збереження структури сайту:

Redirect 301 / https://new-sitename.com/

Такий редирект використовується при переносі сайту на новий домен, але з повним переліком дій для «вдалого» переносу ви можете ознайомитися в нашій статті «Перенесення сайту без втрати позицій».

301 редирект з HTTP на HTTPs

Встановивши SSL-сертифікат ви отримаєте захищену версію сайту (на протоколі https://), але доступною залишиться також і незахищена версія (на протоколі http://). Для «склейки» потрібно налаштувати 301 редирект з HTTP на HTTPs – додати в в .htaccess правило:

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*)$ https://sitename.com/$1 [R=301,L]

301 редирект символів верхнього регістру на нижній

Посилання з символами в верхньому і нижньому регістрі (https://sitename.com/blog та https://sitename.com/Blog ) пошукові боти сприймають за посилання на різні сторінки, отже корисно налаштувати перенаправлення на основну версію. Налаштування з допомогою .htaccess та PHP:

Додати в .htaccess код:

RewriteCond %{REQUEST_URI} [A-Z][OR]

RewriteCond %{QUERY_STRING} [A-Z]

RewriteCond %{REQUEST_FILENAME} !-s

RewriteRule (.*) rewrite-strtolower.php?rewrite-strtolower-url=$1 [QSA,L]

Створити в тому ж каталозі файл rewrite-strtolower.php з рядками:

<?php

if(isset($_GET['rewrite-strtolower-url'])) {

$url = $_GET['rewrite-strtolower-url'];

unset($_GET['rewrite-strtolower-url']);

$params = http_build_query($_GET);

if(strlen($params)) {

$params = '?' . $params;

}

header('Location: https://' . $_SERVER['HTTP_HOST'] . '/' . strtolower($url) . $params, true, 301);

exit;

}

header("HTTP/1.0 404 Not Found");

die('Unable to convert the URL to lowercase. You must supply a URL to work upon.');

301 редирект на URL без розширення

Наприклад, у вас наявна сторінка https://sitename.com/help.htm і потрібне перенаправлення на URL-адресу  https://sitename.com/help , додайте правило:

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME}.htm -f

RewriteRule ^(.+)$ $1.htm [L,QSA]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.htm\ HTTP/

RewriteRule ^(.*)\.htm$ /$1 [R=301,L]

Змінивши .htm на інше значення, отримаєте правило для редиректу потрібного розширення.  

301 редирект з адреси без слешу на слеш

Правило в .htaccess  для налаштування 301 редиректу для посилань без слешу на адресу з слешем:

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ /$1/ [L,R=301]

і навпаки, для отримання посилань без слешу:

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ /$1 [L,R=301]

301 редирект з WWW без WWW

Сторінки з WWW в URL-адресі та без WWW пошукова система визначає як дублікати. Бажано обрати один і налаштувати на нього переадресацію з інших варіантів.

За наявності у сайту позицій, потрібно перевірити, яка з версій має більшу видимість (більшу кількість сторінок в результаті пошуку):

  • за допомогою оператора «site» (site:www.sitename.com та site:sitename.com) визначити, який варіант має більше сторінок в результатах;
  • перевірити кількість сторінок в індексі за допомогою Google Search Console, додавши та підтвердивши кожну з дзеркал сайту.

Для налаштування 301 редиректу посилань без WWW на адресу з WWW, в .htaccess додайте наступний код:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^v sitename\.com$ [NC]

RewriteRule ^(.*)$ https://www.sitename.com/$1 [R=301,L]

  Навпаки, правило для налаштування 301 редиректу з WWW на адресу без WWW:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.sitename\.com$ [NC]

RewriteRule ^(.*)$ https://sitename.com/$1 [R=301,L]

  Більш детальний опис налаштувань редиректів в .htaccess  ви можете переглянути за посиланням.

Налаштування редиректів за допомогою CMS

Переважна більшість CMS мають комплекс інструментів для налаштування редиректів, вони можуть бути інтегровані або ж, використовуються плагіни. Для використання необхідно вивчити відповідні інструкції.

Поширені помилки з 301 редиректами

Налаштування переадресації для сайту не завжди працює коректно, отже потребує перевірки і, за необхідності, корегування. Розглянемо найпоширеніші проблеми, які виникають при використанні редиректів.

Редирект не працює

Наприклад, ви додали правило в .htaccess, але перенаправлення не спрацьовує. Можливо, команди в файлі розташовані в невідповідній послідовності, спробуйте розмістити «непрацюючу» команду на початку файлу. В .htaccess директива розташована першою може модифікувати запит і він не задовольнятиме умовам наступних директив.

Ланцюжки редиректів

Інколи, перейшовши за посиланням, ви не потрапляєте на кінцеву сторінку одразу, і замість одного перенаправлення потрібно більше (наприклад з http:// на https:// і потім з URL із WWW на без WWW). Кожен з «зайвих» редиректів – це додаткове навантаження на сервер та збільшення часу завантаження сторінки, що не може сподобатись ні пошуковим ботам ні відвідувачам.

Циклічні редиректи

Це помилка в логіці налаштування переадресації, коли одна адреса сторінки перенаправлена на попередню адресу в ланцюзі редиректу і, по колу. Кінцева сторінка не завантажиться і виникне помилка «ERR_TOO_MANY_REDIRECTS».

Биті редиректи

У випадку, коли відвідувач сайту чи пошуковий бот не можуть потрапити на кінцеву сторінку редиректу, сторінка не відкривається і повертає 4хх або 5хх код відповіді сервера. Така сторінка не може бути в результатах пошуку. Перевірка помилок спрацювання редиректів на сайті бажано періодично перевіряти. Для цього ви можете використовувати як Google Search Console, додавши свій сайт, так і програму SEO Spider Screaming Frog.  

Підведемо підсумки

Застосування редиректів в SEO оптимізації, за умови правильного налаштування, сприяє збереженню та росту позицій сайту. Періодичні перевірки веб-сайту та усунення проблем з перенаправленнями, битими посиланнями, тощо,  допомагає покращенню користувацького досвіду та якості індексації сайту а, отже, підвищенню відвідуваності.

В той же час, некоректні налаштування редиректів призводять до погіршень в якості пошукової оптимізації та роботі веб-ресурсу взагалі, а виправлення можуть коштувати великої кількості ресурсів і часу. Отже, за відсутності достатнього досвіду, рекомендуємо довірити налаштування переадресації експертам: програмістам та SEO-оптимізаторам.

Олександр Романенко
Team Lead/Senior SEO-спеціаліст
комерційна пропозиція

    SEO-просуванняКопірайтингSMM-просуванняРозробкаКонтекстна рекламаДизайн
    Digital новини в нашому телеграм-каналі
    Інтернет-маркетинг
    простою мовою
    підписатись
    Інші статті автора
    05/12/2024
    У футері розміщується інформація, яка може зацікавити користувачів, проте не є основною та найважливішою. Серед того, що частіше за все додають у футер – текст про компанію, політика конфіденційності, клікабельні назви розділів та інша інформація, залежно від потреб ЦА.

    06/02/2023
    SEO-аналітика – це процес збору та аналізу інформації, щодо характеристик і параметрів сайту «очами» пошукових систем та відвідувачів.

    20/09/2024
    Просування в інтернеті – це складний та трудомісткий процес, що потребує значних зусиль, часу та уваги. При правильному підході може дати значну перевагу перед конкурентами. Тому важливо уникати типових помилок, розглянутих у статті.

    Останні статті по #SEO
    24/04/2025
    Зазвичай, для аналізу різного роду даних (мета-теги, ключі тощо) SEO-спеціалісти використовують різноманітні сервіси по типу SEMRush, Serpstat чи Ahrefs. Але весь потужний функціонал цих інструментів не завжди доречний для якихось невеликих або повсякденних задач SEO.

    23/04/2025
    Інтент пошукового запиту у SEO — сенс, який користувач вкладає в свій запит до пошуковика. Інакше інтент можна назвати метою, наміром, в якомусь сенсі навіть болем користувача.

    01/04/2025
    iFrame — це простий спосіб зробити сторінки сайту або блогу інтерактивним. Але чи є тег iFrame безпечним для SEO вашого сайту? Навколо цього питання є декілька неоднозначних позицій, з якими ми спробуємо розібратися в цьому матеріалі.

    WhatsApp Telegram Viber Почати розмову