我正在开发一个具有以下结构的组件。该系统是在多租户概念下开发的。
www.a.com,www.b.com,www.c.com是位于不同域但但运行相同系统的网站。每个网站在其本地数据库中都有自己的模板和网页。那是可行的。
在这些三个站点上运行的系统是独立的,如上所述(模板等)。 www.a.com,www.b.com,www.c.com 拥有一个大型数据库,其中所有系统数据都得到维护。由于系统是根据MVC开发的,我想要做的是拥有一个模型(多个模型),其中包含所有逻辑。所以如果我在模型中进行一次更改就会影响3个网站。
根据我的研究,模型应该保持在云端。我如何用MVC实现这样的要求(鉴于我使用Joomla作为我的CMS,MySQL作为DB)?如何为所有3个站点提供单一模型?
答案 0 :(得分:0)
你可以在同一个joomla安装上放置多个域而不做任何更改,只需添加一个名为virtualdomains的插件,它允许你(免费)选择模板 - 因此 - 菜单,扩展和每个可用的页面域; 维护方面这很容易,因为所有都在一个盒子里;但是用户会看到三个网站具有不同的内容,布局和网址。
只是几个警告: 1)确保没有使用url(http://www.a.com/template/xxx/js/jquery.autocomplete.js)vs / template / xxx / js / jquery调用脚本或css或其他本地资源。 autocomplete.js,第一个将使用缓存很糟糕。 2)使用.htaccess处理不同域上的任何复杂的错误,例如same-url;使用sh404或类似组件来管理SEF网址。
答案 1 :(得分:0)
这个模型看起来很复杂。
这取决于这个的主要目标是什么?它只是将所有文章/用户聚集在一起?但为什么?
如果您正在处理在多个Joomla安装上运行一个项目的问题,我可以建议您将它们放在单个Joomla上,而不是使用虚拟域(http://extensions.joomla.org/extensions/core-enhancements/multiple-sites/7557)在其他域上“复制”该网站。然后,您将为您的所有项目提供一个数据库。
其中一个缺点是它主要适用于具有相同组件和文章结构的项目。例如,本地新闻的区别在于不同域名下的区域等。
供参考:解决方案在Joomla 2.5最新更新上真的很快。