Объединить два сайта в один

autosoft

Новичок
Господа!
Вот задачка такая есть.
Как сделать так что бы на одном домене было два сайта.
Попытаюсь объяснить…
Есть один движок (старый) и есть другой (новый).
Так вот нужно сохранить работу старого, но и новый что бы работал тоже.

Есть идея такая.
1. Старый оставить как есть, только пиреименовать index.php в index.old.php, а новый расположить в директории new.

2. В корне поместить index.php примерно такой.

PHP:
<?php

include(‘/new/index.php’);
// 3. Удалить объявления классов, функций, констант оставленных /new/index.php
if (!$success) include(‘index.old.php’)

?>
Проблема пунктом 3.
Как это сделать? Ничего толкового не нашел.

Или может можно как-то иначе?
 

Gas

может по одной?
для старого сайте сделай поддомен old.site.com, физически сайты пусть лежат в разных дирректориях, замечем файлы мешать.
 

autosoft

Новичок
Всё чуть сложнее.
Это система учётная. Написана на PHP. Написана давно и самописно.
Работает внутри конторы. Склад там и прочее.
К ней в конторе даже ходят по IP иногда – 192.168.0.2 и всё.
Так вот что бы добавить новый функционал в неё захотелось новый движок прикрутить (тоже самописный), но старый трогать нельзя – там много всего.

Для пользователя вход должен быть один. Поддомен никак нельзя.
Я уже думал. Межсайтовую авторизацию делать.

Не могу понять почему в PHP нельзя классы объявленные удалять.
Вызвать бы get_declared_classes() до и после. Разницу почистить.
Понятно что вроде неправильно это для языка. Но ведь транслятор же и eval есть.
Ну это так к слову.
 

Gas

может по одной?
А, вот оно чё, Михалыч.

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

autosoft

Новичок
Тогда пложи "новый движок" в какую-то поддиректорию проекта,
Уже сделано.
используй уже существующий код для работы с сессиями и получения инфы об авторизованном пользователе.
Именно так.
Ссылку на свой новый функционал добавь в интерфейс залогиненного пользователя.
Если б одну ссылку. Я хочу всё через "новый движок" пропускать. И так плавно со старого на новый переходить.
 

Gas

может по одной?
Ясно. Лучшее враг хорошего, если новых фич предпологается небольшое количество от уже имеющихся (менее 30%) - я бы не городил "новый движок", а дописывал функционал на том что есть.
А так, сложно советовать что-то конкретное в этом случае, ну можно index.php подменить и по значению урла определять: подключать новый front-controller (допустим урл пусть начинается /v2 а mod_rewrite всё равно на index кидает) или старый. Но какие-то проблемы всё равно возникнут.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Ох уж мне эти заявления
"Тут все гавно, нужно движок переписать"
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Щас в меня плеваться начнут.
Когда меня просят доработать сайт, натянуть новый дизайн, добавить каких-то свистелок и перделок.
Я обрисовываю ситуацию как можно делать работу, в чем плюсы в чем минусы.

Словянский заказчик, как правило решает "Мне шоб быстро и абы работало".
В итоге приходится копаться в чужом говне.
Добавлять своего еще чуток.
И проект стает еще говнистее и вонючее.
Заказчик доволен, результат в разы быстрее чем кодить с нуля.

Буржуйский заказчик, в основном предпочитает подождать.

Сори, наболело. Хардкор тут у меня. Иду по первому плану.. Отказать совесть не позволяет.
Обычно адекватному товарищу срочно нужно похардкорить. =(

grigori
Холи его и лелей.
Оберегай и храни как зеницу ока.
ДА прибудет с тобой сила
 

tz-lom

Продвинутый новичок
Mr_Max
с другой стороны лично наблюдал процесс переписывания говна в говно но уже с объектами
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
tz-lom
ну да, получаются себе такие говЕнные объекты.
 

autosoft

Новичок
В общем всем спасибо за ответы.

Задачка тривиально так и не решилась. Не нашлось почему-то в PHP таких средств.

Есть конечно classkit, но можно только методы удалять (и определять), а не сам класс. Тоже с функциями - есть несколько расширений в pecl, но опять таки удалить функцию возможностей никаких.

Значит нужно следить что бы в новом коде «важные» идентификаторы не дублировались с идентификаторами с коде старом.

А на счет того насколько нужно это вообще или нет – то это тема совсем иная. Вопрос же не в этом. Лучше всего это когда вообще ничего не нужно делать.
 

AmdY

Пью пиво
Команда форума
autosoft
а зачем тебе вообще смешивать код?
пропиши правила mod_rewtite, старые запросы заворачивай на index.old.php , если правила нет, то сработает новый. проблема судя по описанию придумана вами и не существует в реальности.
 

autosoft

Новичок
Это не сайт, а не понятно что. Называют просто – база.

Что бы что то дописать нужно много лишней дополнительной работы сделать.
Так как никакого, даже примитивного фронт контролера нет, а точнее удобного.

Например, хочу добавить ajax, которого там нет, да и много чего ещё.
Влазить в старый код всё равно что развалить там всё.
Поэтому и хотелось пристегнуть как-то новый код что бы старому не навредить. Минимальными затратами.

А вот про rewrite я совсем не подумал. За это спасибо! То что надо будет.
 
Сверху