Редирект 301 - як правильно налаштувати переадресацію

Якщо ви є досвідченим користувачем, то можете відразу перейти до розділу з описом як налаштувати редирект 301.

Що таке редирект 301?

Далеко не всі початківці веб-майстри знають що таке «редирект 301" і для чого він призначений. Як видно з назви, дане поняття складається з двох частин:

Спілкування між браузером і веб-серовром

В даному випадку можна сказати, що браузер звертається до сервера alsol.ru і просить повернути документ index.php, який знаходиться в директорії / slovar-synonymov /.

Можна зробити висновок, що після звернення браузера до веб-сервера, останній повертає йому запитуваний документ який і відображається на екрані користувача. Але так буває не завжди.

Що таке код статусу запиту

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

Редирект 301 - як правильно налаштувати переадресацію
Редирект 301 - як правильно налаштувати переадресацію

Якщо запитуваної сторінки не існує, то сервер повідомляє про це клієнта за допомогою спеціального коду статусу запиту. В даному випадку код статусу буде дорівнює 404, що видно на прикладі.

Якщо говорити правильно, то код статусу повертається в будь-якому випадку, так як він є невід'ємною частиною протоколу HTTP. Якщо сторінка існує і буде передана браузеру, повертається код статусу 200 OK. Нижче наведені найбільш популярні коди:

Повний список статусів і їх розшифровку можна знайти тут.

В яких випадках застосовується редирект 301

дублі сторінок

Очевидно, що всі пошукові системи намагаються видавати своїм користувачам релевантні (максимально відповідають запитам) результати. А одним з основних ворогів пошукових систем є сайти, що містять однаковий контент. Для чого потрібен інтернет містить купу однакових сторінок? Уявляєте, якщо пошуковик представить вам результат де, кожен сайт буде містити одну і ту ж однакову інформацію. Дуже скоро така пошукова система перестане користуватися популярністю і буде животіти на задвірках інтернету.

Переїзд сайту на новий домен

Як налаштувати редирект 301

Нарешті можна перейти до найголовнішого питання даної статті. Як правильно організувати редирект 301? Існує кілька способів це зробити.

Редирект 301 за допомогою файлу .htaccess

Використання файлу .htaccess підійде в першу чергу тим веб-майстрам, які не хочуть втручатися в код своєї CMS або не відчувають впевненості в своїх навичках програмування.

Для перенаправлення всіх запитів зі старого сайту на новий, створіть в корені старого сайту файл .htaccess і додайте в нього рядок:

Загальний синтаксис використання директиви Redirect файлу .htaccess виглядає наступним чином:

Використання директиви RedirectMatch

можна використовуватися наступний код:

Одним з недоліків даних директив є неможливість використання параметрів GET передаються в URI. Тобто зробити зворотний редирект

Для того, що б мати можливість працювати з параметрами GET необхідно використовувати можливості модуля mod_rewrite.

Редирект за допомогою директив модуля mod_rewrite

Розглянемо кілька прикладів, починаючи з більш складного.

Для організації редиректу

необхідно додати в файл .htaccess наступний код:

Директива RewriteCond дозволяє звертатися до змінних сервера застосовуючи до них регулярні вирази. Наступна за нею директива RewriteRule виконається тільки в тому випадку, якщо співпаде регулярний вираз в попередньому рядку директиви RewriteCond.

виконується наступним чином: