2011-08-31 67 views
2

我对CakePHP还是有点新鲜感,现在我已经创建并部署了一个使用它的(相当复杂的)应用程序。它具有完整的用户和组群支持,我花时间获取访问表的工作和一切。在CakePHP中分享不同应用程序之间的身份验证?

现在,我正在创建一个单独的应用程序。我最初创建了一个全新的CakePHP安装,但后来我意识到我想基于第一个应用程序对用户进行身份验证。他们目前使用不同的数据源。我知道有几种方法可以完成,有各种优点和缺点。我是否:

  1. 保持它们分开,向我的扩展应用程序添加数据源,并将我的用户验证代码移到端口上?
  2. 保持它们分开,与第一个应用程序进行登录,并以某种方式使用通信协议与第二个应用程序共享该数据?
  3. 将它们组合成一个数据源,并接受我的应用程序增加的复杂性?
  4. 完全不同的东西?

我使用CakePHP创建了两个站点,其中在同一主机/主机上运行,​​并连接到同一个MySQL服务器。用户总是在主应用程序中存储/创建,只需要被第二个应用程序无源地访问。

+0

你能否给我们详细介绍一下每个网站的用途以及为什么你认为它们应该是分开的。 –

+0

这些网站存储学生数据。该网站的一部分专门用于注册学生并允许他们申请我们的一个课程。这个新的网站供学生和教师使用,它是一个全球性的活动日历。除共享登录凭证外,它们基本上是完全不同的功能:程序的管理员不一定需要通过表格来约会,这就是为什么我想分开它们的原因。但我不认为它们在技术上需要分离 - 它只会扩展一个已经很复杂的代码库。 –

回答

-1

老实说,听起来像你可以轻松地把它们放在一起。你把他们分开的声音的原因就像你可以把它们分开放在一个程序中。

例如,我为生活而工作的应用程序会执行许多这些操作。用户可以注册,他们还可以访问活动日历,工作发布,最近新闻以及其他约25个模块。他们只是程序的不同部分。

您可能有一个应用程序具有像用户控制器负责注册的/users/register这样的路线。然后,您可以让应用程序的另一部分路由到/calendar/....,日历控制器将负责日历逻辑。如果学生和教职员需要单独的日历,则可以使用/faculty/calendar/1/student/calendar/1这样的路线,这些路线将路由到日历控制器的不同部分。

这是关于模块化您的应用程序,以便您可以轻松地维护逻辑上分组在一起的代码。您不必将它们分开以至于它们是两种不同的应用程序。

我想你会避免很多长期头痛。

如果它让你对我的看法感觉更好,那么我所谈论的软件就是一个企业解决方案,它每天处理(字面上)数百万文件,并且每周有数十万用户在政府水平。

相关问题