我开发了一个php应用程序,公司的所有员工都可以登录帐户。我想让这个平台为拥有自己员工的多家公司做好准备。挑战在于我想只有一个核心,但每个公司都有一个数据库。单独的数据库或多或少是必须的。更好地解决可能存在的隐私问题,没有极端大型表,相同的用户可以使用相同的凭据在多家公司工作。当然还有SSL。
我工作的解决方案是使用多个子域,每个子域实际上是一个指向核心域的域指针,程序正在运行。因此,核心域将处理对子域的调用,但浏览器URL将继续显示子域(company_1.application.com)。在核心域上,我检查调用来自哪个子域,然后选择一个数据库。效果很好,但有一个缺点:SSL。核心域具有SSL证书。要使子域工作在SSL上,我需要将每个子域添加到核心域SSL证书。这是因为子域不是托管域,而只是域指针。因为我希望平台能够增长,所以创建新证书会给我越来越多的错误空间。
因此,我正在寻找没有证书问题的另一种方法。它必须是登录页面上没有公司选择器的东西,并且还必须“保持登录状态”。我未经测试的第二个想法。将公司添加到www.application.com/company_1等网址。在htaccess中,我会将此网址改为www.application.com?index.php?comp=company_1。然后我可以使用comp值来确定要使用的数据库。问题是comp不会出现在每个url中,所以我需要将com放在会话变量中。我认为这会奏效,但它会打破“让我登录”。当用户未登录或会话消失时,我现在必须使用哪个数据库。
第二版,SSL问题已修复,但出现了新问题。法律保护的痛苦? 想法,有人,拜托?