трохи передісторії
Я прив'язав до нового хостингу старий домен з якого потрібно зробити 301 редирект на новий сайт. Коли я роблю посторінковий редирект зі старого сайту www.psyholog-olga-shubik.ru на новий домен //olgashubik-psy.ru. але він спрацьовує тільки для головної сторінки.
У файлі .htaccess написано:
Що вийшло
Тобто кудись пропадає слеш. Якщо його додати вручну, то тоді редирект «спрацьовує». У чому ж може бути причина?
Для мене важливо було вирішити питання якомога швидше. Я вивчав технічні документації обох пошукових систем в пошуках відповіді. І навіть за допомогою зворотного зв'язку написав лист в службу підтримки Яндекса:
Добрий день. Я робив межхостовий посторінковий редирект, але він чомусь спрацьовує тільки для головної сторінки.
Ось тут я привів шматочок коду та скріншот. //www.fortress-design.com/problemy-s-301-redirektom/
Подивіться, плиз, в чому може бути причина?
З повагою, Ілля.
Рішення проблеми з 301 перенаправленням
P.S. Так, одну причину знайшов. Конфлікт викликаний був перовой рядком Redirect 301 / //olgashubik-psy.ru. Як тільки її прибрав, відразу всі внутрішні сторінки заробили. Але, як же тепер перенаправити головну сторінку?
P.P.S. Вирішив і другу проблему. Десь прослизала інформація, що черговість директив теж має значення. І мені прийшла ідея спробувати вказати директиву перенаправлення на головну в самому кінці списку після внутрішніх сторінок. Ось це і стало визначальним фактором. Тобто редирект з головної сторінки старого сайту на головну сторінку нового як би перекривав інші правила для внутрішніх сторінок. Рішення було геніальним) написати правило для головних в самому кінці)
Рекомендуємо прочитати Найактуальніше в пошуковому маркетингу
Дякуємо за увагу. Хеппі енд!
Про те, що все зроблено правильно підтвердив і Платон Щукін.
На скільки я бачу, Ви самостійно розібралися з цією помилкою, зараз редирект коректно працює для всіх сторінок старого домену. Незабаром робот відстежить дані зміни.
Ваш сайт olgashubik-psy.ru вже почав індексуватися і зможе з'явитися в результатах пошуку після наступних 1-2 оновлень пошукової бази.
-
Просимо Вас висловити свою думку про отриманій відповіді: //feedback2.yandex.ru/appraisal.xml?session=5e5191ce663657beb42295d93499a3651870e60f-28054375-58242486
З повагою, Платон Щукін
Служба підтримки Яндекса
//help.yandex.ru/
Які ще можуть бути причини
Цілком можливо, що проблема з mod_alias, можна спробувати зробити редирект через mod_rewrite, якщо не вийде. Тому треба переконатися, що на хостингу відповідні модулі включені.
Як дізнатися, що модуль mod_alias на хостингу включений? Дуже просто.
Ви можете створити інформативний файл: phpinfo.php. У ньому прописати наступну директиву:
Якщо mod_alias є в списку Loaded Modules (завантажені модулі) означає він включений.
Які були труднощі при тестуванні й налагодженні редиректів
Я працюю в Гугл хром. Хоча напевно інші браузері не менше жорстко кешують. Загалом якщо неправильно вказав директиву, то потім виправивши її, при перевірці як би «нічого не змінюється». І це реально ускладнює процес налагодження.