301 Редірект на всі випадки життя за допомогою
Далі будуть описані кілька порад і приклади 301-го редіректу за допомогою файлу .htaccess

Намагайтеся уникати послідовних редиректів, тому що кожен редирект цей час завантаження сторінки і передача посилальної маси, а для пошукового робота - нечіткі команди.
Браузери кешують редіректи, тому перевіряти їх краще за допомогою онлайн ресурсів.
301 редирект з однієї сторінки на іншу
301 редирект з www на домен без www
301 редирект з домена без www на домен з www
301 редирект зі сторінок зі слешем на сторінки без слеша в кінці URL
Такий редирект буде працювати наступним чином:
301 редирект з усіх сторінок одного домену на головну сторінку іншого домену
301 редирект з протоколу http на протокол https
Якщо у вас на сайті є SSL сертифікат і працює протокол https, то для 301-го редіректу вам необхідно додати в .htaccess наступний код:
301 редирект з протоколу https на http
І зворотний приклад, якщо у вас немає SSL сертифікату і протокол https не працює:
Видаляємо кілька слешів поспіль в URL і робимо 301 редирект
Якщо по випадковості у вас з'явилися URL такого виду: mysite.com/page///my-page, то можна зробити 301-й редирект без дублювання слешів:
Видаляємо поспіль кілька тире (дефісів) і робимо 301 редирект
Як в ситуації з повторюваними Слеш в URL може з'явитися кілька тире або дефісів, для 301-го редіректу з їх видаленням додаємо код:
Вирізати з URL index.php
Приклад без GET параметрів, наприклад з mysite.com/index.php на mysite.com/
Приклад з GET параметрами, наприклад з mysite.com/index.php?value=1p=3 на mysite.com/?value=1p=3
Кілька прикладів суміщення 2-х редиректів в один
Для уникнення послідовних редиректів можна використовувати суміщені варіанти.
301 редирект з www на без www і зі слешем в кінці URL
301 редирект з без www на з www і зі слешем в кінці URL
301 редирект з без www на з www і без слеша в кінці URL
301 редирект з www на без www і без слеша в кінці URL
Скажіть будь ласка, в даному випадку виходить, що і адмінку теж буде перекидати на новий сайт?
чи можна зробити виняток, щоб конкретні сторінки залишалися без редиректу?
редирект кожної окремої сторінки окремо - не варіант - їх занадто багато
AddDefaultCharset utf-8
RewriteEngine on
Це буде працювати за умови, що є реальна папка admin
Redirect 301 / xolodilnik-shumit-stuchit /articles/1-remont_holodilnikov_na_domu_samostoyatelno/22-holodilnik_shumit_stuchit.html
як ізмежать подвійного редиректу?
Дякуємо!
І взагалі чи можна в файлі .htaccess прописувати велика кількість редиректів сторінок одночасно?
Будь-які інструкції файлу .htaccess впливають на швидкість роботи веб-сервера. Причому кількість - поняття відносне. 65 редиректів начебто і не багато, а якщо у Вас в розпорядженні потужний сервер так і взагалі мало.
Припустимо, прописали, пізніше їх можна видаляти очистивши файл .htaccess?
За ідеї після того як робот обійде сторінки з яких йде редирект, то перезапише (переіндексірует або ще щось там зробить) url і більше посилатися на нього не буде, але якщо у Вас залишилися посилання зі сторонніх майданчиків, то користувач при переході отримає 404 -у помилку замість редиректу.
А якщо сторінок не одна, а їх 65 сторінок.
В такому випадку є 2 варіанти, спробувати написати регулярний вираз для редиректу (в цьому я точно не допоможу) або спростити всі і зробити редирект через php.
Таке враження, що всі хто пише на подібні теми сам не знає, про що пише, або ж має дуже слабке уявлення по самій темі.
Я знаю що нічого не знаю (Сократ). Але це не заважає допомагати і ділиться своїм досвідом і робочими прикладами.
Сподіваюся максимально відповів на Ваші запитання.
P.S. Я розумію що Ви хочете зробити все максимально правильно, але іноді витрачений час не варто отриманого результату.
Буду дуже презнателен якщо ви мені допоможете
Привіт, спробуйте так (перевірено):
І ще, при створенні сертифіката краще вказувати домен як з www так і без нього
Підкажіть будь ласка, який варіант краще використовувати, щоб при переході на інший хост не треба було дописувати редіректи? якщо автоматично виставлено скажімо 302, а я в хтассес 301 напишу, чи будуть глюки? і взагалі для моєї ситуації, як ця справа має виглядати? дуже сподіваюсь на вашу допомогу
Ні, структура папок інша і GET параметр "cmpl = 2407" це сторінка "predmet-123".
Подібних сторінок близько тисячі, якщо не можна зробити "пакетний" редирект, то можна звичайно і в ручну кожен прописати.
Так само є посилання виду:
Тобто до першого варіанту додається "min = min".
Цю сторінку так само потрібно редирект на: