Php 允许在多个站点上进行会话

Php 允许在多个站点上进行会话,php,api,session,Php,Api,Session,我在一个有登录API的网站上工作。因此,当人们登录我的网站时,他们将自动登录到其他网站 他们是否可以通过这种方式设置会话,以便其他网站可以使用它?如果没有,他们还有其他解决方案吗?一种方法-您可以将会话值存储在数据库中,并可以在其他站点中使用。:) 例如:- 假设我的站点部署在多个服务器上,最终用户可能会根据流量重定向到不同的服务器,那么最好将会话值保存在db中 是的。例如,可以将其用于会话存储。您应该考虑配置php会话以使用自定义存储。这里是php人,你要做的可能是使用遍布整个域的cookie

我在一个有登录API的网站上工作。因此,当人们登录我的网站时,他们将自动登录到其他网站


他们是否可以通过这种方式设置会话,以便其他网站可以使用它?如果没有,他们还有其他解决方案吗?

一种方法-您可以将会话值存储在数据库中,并可以在其他站点中使用。:)

例如:-


假设我的站点部署在多个服务器上,最终用户可能会根据流量重定向到不同的服务器,那么最好将会话值保存在db中

是的。例如,可以将其用于会话存储。您应该考虑配置php会话以使用自定义存储。这里是php人,你要做的可能是使用遍布整个域的cookie。然后可以将此cookie链接到会话。我目前正在Symfony2上做类似的事情

例如: 登录名:login.mydomain.com application.mydomain.com etc.mydomain.com

login.*显然将包含我的登录逻辑+表单等。这还将包含一个API,其他应用程序可以验证cookie。我的应用程序将首先检查用户是否已登录。如果没有,它将检查是否具有所需的cookie。如果没有,它将重定向到login.*登录页面

如果它确实有cookie,它将在我的login.*API中对此进行验证。Expired>重定向到登录页面,如果没有,它将返回该用户的所需信息并“登录”到我的应用程序

目前我唯一的问题是存储会话。我使用mcrypt加密内容并将其存储在mysql中(cookie\u id,cookie\u contents)。我只有一个问题,它不会自动清除过期的会话,我仍然需要找到解决方案


基本上,您希望的是单点登录(只是猜测,但我认为准确)。

我认为redis用于缓存。您可以将其用于缓存和存储会话。Redis不是cahce机制,它是键->值存储。或者您的多个站点在同一台服务器上,并且在同一个包中?我可以,但是他们如何能够访问存储在我的数据库中的信息?@user3001689:您可以通过cURL库访问信息-将请求发送到所需的服务器,并在收到响应时,因此可以使用户。