我遇到了重定向和会话的问题。
应用程序的流程如下:
客户到现场将产品添加到购物车选择使用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来访问该页面。希望这能帮助