我正在使用具有登录API的网站。因此,当人们登录我的网站时,他们将自动登录到其他网站。
是否可以设置会话以便其他网站可以使用它?如果没有,是他们的任何其他解决方案吗?
答案 0 :(得分:2)
一种方法 - 您可以将会话值存储在数据库中,也可以在其他站点中使用。 :)
实施例: -
假设我的站点部署在多个服务器上,并且最终用户可能会根据流量重定向到不同的服务器,那么最好将会话值保存在db中。
答案 1 :(得分:0)
是。可以在示例Redis中使用会话存储。您应该寻找配置php会话以使用自定义存储。这是http://php.net/session.customhandler
的php man答案 2 :(得分:0)
您要做的可能是使用遍布整个域的Cookie。然后可以将此cookie链接到会话。我目前正在Symfony2上做类似的事情。
例如: login.mydomain.com application.mydomain.com etc.mydomain.com
login。*显然会包含我的登录逻辑+表单等。这也包含一个API,其他应用程序可以验证cookie。我的应用程序将首先检查用户是否已登录。如果没有,它将检查它是否具有所需的cookie。如果没有,它将重定向到登录。*登录页面。
如果它有cookie,它将在我的登录。* API中验证。已过期>重定向到登录页面,如果没有,它将返回该用户所需的信息并“登录”到我的应用程序。
我目前唯一的问题是存储会话。我使用mcrypt加密内容并将其存储在mysql(cookie_id,cookie_contents)中。我有一个问题,它不会自动清除过期的会话,我仍然需要为此找到解决方案。
你基本上寻找的是单点登录(只是猜测,但我认为准确)。