重定向至PayPal中断会话


Redirect to PayPal breaks sessions

我遇到了重定向和会话的问题。

应用程序的流程如下:

客户到现场将产品添加到购物车选择使用PayPal结账被重定向到PayPal登录PayPal已重定向回站点继续浏览账单/发货页面确认订单并提交

这正在毫无问题地进行开发。

当我转到实时服务器时,重定向到PayPal后,会话不断丢失。

知道可能是什么吗?

额外信息:

我发现,当我第一次去网站时,我有一个会话ID。

当我完成结账过程时,我被重定向到PayPal,然后被重定向回返回URL(返回到商家网站),cookie中有相同的会话ID。因此,看起来会话并没有被重新启动,而是会话数据只是空的。

我也有同样的问题,我发现域名有错误,就像之前重定向到贝宝的url是一样

'http://www.example.com/paypal-redirect.php'

而在从贝宝返回时,url是

'http://example.com/paypal-return.php'

所以这里我错过了www,所以可能是这样,或者http://https只是检查一下,希望这将有助于解决这个问题

您是否在从Paypal返回的页面上调用session_start()?

这通常是常见的错误。http://www.w3schools.com/php/php_sessions.asp

在php.ini中,设置session.cookie_domain='.yourdomain.com';或者如果您无法访问它,请更改域参数

session_set_cookie_params ( lifetime,'/','.yourdomain.com',false);

注意,您必须在session_start()之前调用它;

这将在包括www.domain.com在内的所有子域上共享会话,这解决了我的问题。这样做的优点是,我们不必担心用户是键入www.domain.com还是简单地键入domain.com来访问该页面。希望这能帮助