众所周知,QQ互联以前在PHPCMS上是可以正常使用的,现在是有问题的,原因是:
QQ帝国为了安全考虑修改了规则,规则中明确规定回调地址不能带参数,但是PHPCMS后台的回调地址又必须是:
http://网站域名/index.php?m=member&c=index&a=public_qq_loginnew才能使用
所以,这就是矛盾的地方。
对于用户来说,如下是一个解决方案,供参考。
一:QQ登陆平台中心,配置回调地址为:
http://www.yourdomain.com/qqcode
二:PHPCMS后台配置,QQ登陆的回调地址也设为:
http://www.yourdomain.com/qqcode
三:修改.htaccess文件(APACHE服务器),在后面加上:
RewriteCond %{QUERY_STRING} ^code=(.*)$
RewriteRule ^qqcode index.php?m=member&c=index&a=public_qq_loginnew&code=%1 [L]
其他相关代码和配置完成后,就可以正常使用QQ登陆了,实际测试截图:
四:但是问题来了,验证用户名,邮箱和昵称总是提示“禁止注册或用户已存在”等问题。解决方法如下:
在”/phpcms/templates/1gear/member/connect.html”文件里修改如下:
//修改用户名验证,大概在201行
url : “”,
data :”m=member&c=index&a=public_checkname_ajax”,
替换成
url : “http://www.bluestep.cc/index.php?m=member&c=index&a=public_checkname_ajax”,
data :”http://www.bluestep.cc/index.php?m=member&c=index&a=public_checkname_ajax”,
//修改用邮箱验证,大概在221行
url : “”,
data :”m=member&c=index&a=public_checkemail_ajax”,
替换成
url : “http://www.bluestep.cc/index.php?m=member&c=index&a=public_checkemail_ajax”,
data :”http://www.bluestep.cc/index.php?m=member&c=index&a=public_checkemail_ajax”,
//修改用昵称验证,大概在238行
url : “”,
data :”m=member&c=index&a=public_checknickname_ajax”,
替换成
url : “http://www.bluestep.cc/index.php?m=member&c=index&a=public_checknickname_ajax”,
data :”http://www.bluestep.cc/index.php?m=member&c=index&a=public_checknickname_ajax”,
测试结果:成功!