PHP

Рефакторинг и сохранение ссылок

В основном проекте полным ходом идет рефакторинг.


Lead meets devs after refactoring

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

В .htaccess внесли запись последней строкой (после всех других правил) о перенаправлении всех url на файл-контроллер:

RewriteRule ^(.*)$ /rewriteController.php


Далее в контроллере перенаправлений мы можем применить вариативную логику (в отличие от .htaccess), у нас в системе идет разбор url на модель и контроллер, в простешем же случае мы можем выполнить банальный редирект в скрипте rewriteController.php:

if (strstr($_SERVER['REQUEST_URI'], 'page_news.html')) header('Location: /News/');
elseif (strstr($_SERVER['REQUEST_URI'], 'page_articles.html')) header('Location: /Articles/');


Главное, что достигается таким способом – гибкость в обработке входящего запроса. Если вы хотите сохранить в браузере запрошенный url, то сделать это также несложно, выполнив архитектуру вашего приложения в подключении различных модулей в зависимости от входящего url.
Теги:
редирект, рефакторинг
Добавлено: 01 Марта 2015 10:08:12 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...