как правильно организовать проект?

sushko

Новичок
Делаю систему аренды интернет-магазинов: самописный PHP-движок без фреймворков. Сейчас можно организовать работу двумя способами:

1. У каждого интернет-магазина своя отдельная папка со своим набором PHP-файлов движка (одинаковых для всех магазинов), своим набором HTML-шаблонов (одинаковых для всех магазинов) и своей отдельной базой данных

2. На сервере есть только одна, единая для всех папка с единым общим набором PHP-файлов движка, единый общий набор HTML-шаблонов, плюс у каждого интернет-магазина своя собственная база данных. При входе интернет-посетителя мы по домену ($_SERVER('HTTP_HOST')) определяем, в какой интернет-магазин он пришел и открыаеем базу данных нужного ему интернет-магазина.

Мне, конечно, больше нравится второй вариант, но нет ли там подводных камней, например, в безопасности?
 

weregod

unserializer
единый общий набор HTML-шаблонов
что-то мешает положить шаблоны в базу?
нет ли там подводных камней, например, в безопасности?
если у магазинов все данные в базах, то как бы нет, дыр вы сами в коде можете понаделать вне зависимости от раздельного/шареного кода.
 

sushko

Новичок
что-то мешает положить шаблоны в базу?
Да просто незачем.

если у магазинов все данные в базах, то как бы нет, дыр вы сами в коде можете понаделать вне зависимости от раздельного/шареного кода.
Ага, спасибо за мнение. Про самодельные дыры в коде я понимаю, конечно.
 

sushko

Новичок
AnrDaemon, спасибо, Вы открыли мне глаза! Без Вашего комментария я бы наверняка заблудился в этом жестоком мире...
 

MiksIr

miksir@home:~$
Дыры будут у тебя, это уже понятно по постановке вопроса, первый вариант чуть безопаснее, но опять же, этим преимуществом нужно уметь воспользоваться, а для этого нужно знать хотя бы базовые вектора атак на веб-приложения, т.е. в твоем случае оба будут не безопасны одинаково. А кодить удобнее со вторым вариантом. В путь!
 

Фанат

oncle terrible
Команда форума
Ой ну набежало специалистов
Человек спросил банальный вопрос про multi-tenant, ему по делу никто не ответил, только пугать начали
"вот за это нас и не любят" (с) анекдот
 

AmdY

Пью пиво
Команда форума
лучше делать гибрид, смотришь есть ли файл папке пользователя, если нет подключаешь из общей папки. это даст возможность легче кастомизировать. только надо быть осторожно с версионированием и обратной совместимостью.
 

weregod

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

AnrDaemon

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