通过cURL设置PHP会话-它会为客户端或服务器设置会话吗?

通过cURL设置PHP会话-它会为客户端或服务器设置会话吗?,php,curl,session-variables,Php,Curl,Session Variables,我有一个网站,使用PHP会话来管理登录用户。另一家公司要求他们的用户登录他们的网站,然后当他们来到我的网站时,用户将自动登录 为此,我们使用cURL将用户详细信息从他们的站点发布到我的站点,在那里我验证他们并创建一个会话来登录他们 但我不能理解的是:会话是为发送cURL帖子的服务器创建的还是为用户的计算机创建的?如果其他站点将数据发布到我的站点,并且我基于成功登录创建了一个会话,那么当用户来到我的站点时,他们会登录吗 我刚刚开始构建实现这一点的机制,并希望在走得太远之前进行检查-我开始认为它不会

我有一个网站,使用PHP会话来管理登录用户。另一家公司要求他们的用户登录他们的网站,然后当他们来到我的网站时,用户将自动登录

为此,我们使用cURL将用户详细信息从他们的站点发布到我的站点,在那里我验证他们并创建一个会话来登录他们

但我不能理解的是:会话是为发送cURL帖子的服务器创建的还是为用户的计算机创建的?如果其他站点将数据发布到我的站点,并且我基于成功登录创建了一个会话,那么当用户来到我的站点时,他们会登录吗


我刚刚开始构建实现这一点的机制,并希望在走得太远之前进行检查-我开始认为它不会工作。

会话将为发出curl请求的服务器创建,而不是最终的客户端。您可以做的是在服务器发出curl请求时生成一个令牌,然后将该令牌提供给将使用该令牌请求站点的最终客户端。然后,您可以检查此令牌以让他登录

会话将为发出curl请求的服务器而不是最终客户端创建。您可以做的是在服务器发出curl请求时生成一个令牌,然后将该令牌提供给将使用该令牌请求站点的最终客户端。然后,您可以检查此令牌让他登录

首先,会话将仅在您自己的浏览器上工作/“用户的计算机”。例如,我登录到一个站点,我使用了一个会话,因此此会话将仅在我的计算机浏览器中保持活动状态。但当我关闭浏览器时,会话将被破坏。因此,要使会话保持活动状态,您需要cookies。谢谢

首先,会话将仅在您自己的浏览器/“用户的计算机”上工作。例如,我登录到一个站点,我使用了一个会话,因此此会话将仅在我的计算机浏览器中保持活动状态。但当我关闭浏览器时,会话将被破坏。因此,要使会话保持活动状态,您需要cookies。谢谢

正如其他人所说,这种方法行不通。当您创建一个PHP会话时,它将绑定到发出请求的计算机——在本例中,这将是另一台服务器


当用户访问您的网站时,您需要确定识别用户的方法。这可能是mguimard建议的令牌、第三方cookie,甚至只是他们的IP地址(尽管我强烈建议不要为此使用IP)。一旦确定了一种标识方法,您只需将该标识符存储在内存/数据库中的某个位置。当用户带着标识符访问您的站点时,请从存储器中检索该标识符并自动创建新会话。

正如其他人所说,此方法不起作用。当您创建一个PHP会话时,它将绑定到发出请求的计算机——在本例中,这将是另一台服务器


当用户访问您的网站时,您需要确定识别用户的方法。这可能是mguimard建议的令牌、第三方cookie,甚至只是他们的IP地址(尽管我强烈建议不要为此使用IP)。一旦确定了一种标识方法,您只需将该标识符存储在内存/数据库中的某个位置。当用户带着标识符来到您的站点时,从存储器中检索该标识符并自动创建他们的新会话。

您不可能为未登录您站点的用户创建会话,您只需为服务器创建会话,当然它不起作用

您可以要求服务器构建该机制,当新用户登录时,将用户重定向到您的站点以创建会话,然后自动重定向回服务器

或者您可以在服务器上实现相同的会话id方法,例如,ip+useragent,
您需要做的是从服务器同步会话,或将服务器推送会话发送给您

您不可能为未登录站点的用户创建会话,您只需为服务器创建会话,当然它不起作用

您可以要求服务器构建该机制,当新用户登录时,将用户重定向到您的站点以创建会话,然后自动重定向回服务器

或者您可以在服务器上实现相同的会话id方法,例如,ip+useragent,
您需要做的是从服务器同步会话,或者向您同步服务器推送会话

啊,好的-谢谢,我已将您的答案标记为已接受,因为您是第一个提出该答案的人。我会将令牌存储在我的数据库中,将其发送回给他们,然后告诉他们在将用户发送到我的站点时将其包含在URL中。我还将使令牌在最初设置为安全性后仅在分钟内有效。啊,好的-谢谢,我已将您的答案标记为接受,因为您是第一个提出它的人。我会将令牌存储在我的数据库中,将其发送回给他们,然后告诉他们在将用户发送到我的站点时将其包含在URL中。我还将使令牌仅在最初设置为安全性后几分钟内有效。