Задать вопрос
NikFaraday
@NikFaraday
Student full-stack Developer

Как обновить сайт с сохранением старых роутов с использование Permanent Redirect?

Есть старый сайт, который написан на древнем asp.net web forms. Он имеет очень хорошую индексацию в поисковиках, что очень важно.

Сейчас разработан новый сайт с сохранением логики, который запущен на другом домене (временно). Нужно обновить сервер со старым сайтом, т.е. залить туда новый сайт, что бы все маршруты со старого сайта были доступны на новом, что бы не "потерять" индексацию старого сайта. Т.е., другими словами, каждая страница должна поддерживать сразу несколько маршрутов, с нового и старого сайтов.

На сколько мне известно, в этом случае отлично подойдёт использование PermanentRedirect (httpStatusCode 301/308)

Как грамотно реализовать такой функционал?
  • Вопрос задан
  • 42 просмотра
Подписаться 1 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 1
Здрасти приехали.
1. Собираешь список ссылок (можно в веб мастере взять)
2. поскольку новая структура то ссылки естественно ручками было стало в экселе. ( структкура кстати должна была быть сделана до начала проектирования нового сайта дабы ты ЧПУ делал уже максимально похожую в тех местах где это возможно)
3. загружаем https://donatstudios.com/RewriteRule_Generator

Проверяем стваим.
Теперь частые вопросы
1 - че все руками ? да
2. два урл старый и новый или толкьо новый? - ответ только новый и редирект 301.
3. как сделать чтоб не просели позиции (никак просядут пока сайт будет индексироваться но посколку у него будет лучше поведенческий фактор он должен подняться потом) но естественно не обязан.
4. Пейджерный че делать с ней ? - а ее не должно быть в индексе только первая страничка. в99% случаях это справедливо.
5 что если нужно все-же индексировать ? уже ничего вы должны были на этапе проектирвоания убрать свойства и фильтры в разные места. под свойства сделать структуру под фильтры ниечего.
в идеале на сайте не должно быт ни 1 индекса с GET
6. много страниц с GET (фильтыры) или нет - нет, нах не нужны уже как лет 10.
Лучше 300 с хорошим поведением чем 300000.

2 способо эксклюзивный но имеет место быть.
если у тебя новый сайт но в нем откровенно некуда вести часть контента. и делать его желания нет.
то тебе нужно чтоб новый сайт отдавал новый контент на тех урл на которых ЧПУ отдает что-то а там где на новом сайте нет, нужно отдавать старый сайт.
В 404.php впихываем (перед отдачей кода естественно) php proxy который отдает старый сайт с домена прописанного в хосте локально. или лежащего на другом домене, по дороге меняя все нужные пути.
я такое делал и даже работает.
Логика такая
200- ок работает движок
404 - уходит в пхп файл который пытается найти 200 на стороне другого сайта и подменяет себя им, если не находит там 200 то соответственно отдает 404.
все занимает около 300 строк кода.
НО это эксклюзив
Из плюсов такой реализации это 1 файл пхп который кодер с легкостью поймет, никаких костылей с nginx
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы