坑爹的QQ登录

做QQ登录时报错 The state does not match. You may be a victim of CSRF.

检查一切无误。

http://www.renyiwei.com/archives/217.html 这篇答案看了好几遍,最后给了我启发,

原因是请求时的域名和回调时的域名不一致,使得Cookie中保存的SESSIONID不一致,造成回调之后无法获取请求前保存在SESSION中的state的值。

好吧,通俗点讲就是打开网站的地址没有带www而你填的回调地址带了www,或者反过来,这种情况session是不能公用的。


session共用:

ini_set('session.cookie_path', '/');

ini_set('session.cookie_domain', '.oumei88.com');

ini_set('session.cookie_lifetime', '1800');

你可能感兴趣的:(坑爹的QQ登录)