我有一点问题。我正在用PHP开发一个分为模块的应用程序。每个模块都是完全独立的,位于单独的服务器上并具有自己的域。例如:
www.moduloprincipal.com.br,www.modulo2.com.br,www.modulo3.com.br等......
问题是我需要当用户对其中一个模块进行身份验证时,用户可以访问同一个用户的其他模块而无需再次进行身份验证。
目前每个应用程序都在不同的服务器上,但如果有必要,它们位于同一台服务器上,这不会有问题。
重要:
阅读几个主题,但发现没有解决方案真正安全。使用OAuth会很有趣吗?
目前,该应用程序使用$ _SESSION对用户进行身份验证,但您可以顺利使用$ _COOKIE。
我正在使用CodeIgniter
由谷歌翻译翻译。对不起......
答案 0 :(得分:10)
我可以从头顶探索两个选项:
将所有服务器设置为保存其会话数据的路径相同,请参阅 session.save_path指令。该位置可以是NFS共享 或所有服务器都可以访问的NAS位置。
另一个选项是implement a database session handler,所以 会话数据可以在所有人之间共享 您的服务器访问同一数据库服务器。所以看看PHP文档 custom session handlers。