站长之家 - 站长资讯 - 易采站长站

当前位置: > 建站教程 > 源码教程 > CMS 教程 >

PHPCMS V9中QQ登录网站失败问题解决方法-PhpCms教程

2019-10-13 14:16 | 来源:易采站长站 | 编辑:admin |

QQ登录是现在大多数网站集成的一个登录方式了,但有时会碰到无法登录这其中原因有很多,今天我碰到PHPCMS V9无法使用QQ登录网站了,下面一起来看看PHPCMS V9不能QQ登录网站解决办法。

这个故障的原因是PHPCMS V9的QQ登录功能代码中,使用了file_get_contents函数来获取腾讯的https网址,这类网址是通过ssl加密传输的。虽然,我们可以通过为PHP安装openssl扩展,让file_get_contents函数可以获取到内容,但获取到的内容还是加密的,无法正常的解密。

我的解决思路是自己编写一个通过curl读取数据的方法,替换掉PHPCMS原有的方法,具体如下:

首先,找到phpcmsmodulesmemberclassesqqapi.class.php文件。

我们在这个qqapi.class.php文件的末尾添加一个名为get_ssl_content的方法,代码如下:

代码如下 复制代码

public function get_ssl_content($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$result = curl_exec($ch);
return $result;
}

添加好get_ssl_content方法后,我们再在qqapi.class.php中搜索“file_get_contents($url)”,找到所以出现的位置,然后判断对应的$url地址开头如果是https,那么就把这个函数替换为我们上面自己编写的get_ssl_content方法。代码如下:

$content = $this->get_ssl_content($url);

至此,我们已经完成了改写工作,此时PHPCMS应该可以正常通过QQ来登录了

注意:file_get_contents 函数处理远程文件时不如curl性能好,特别是在多线程时file_get_contents是无法与curl比的哦。

软件名称:
PhpCms网站管理系统下载
软件语言:
简体/繁体中文
软件授权:
个人免费

  • phpcms v9忘记管理员后台密码的解决方法-DedeCms教程
  • PHPCMS V9 全站 Sitemaps生成实现代码[服务器端版]-PhpCms教程
  • phpcms v9模板制作教程-PhpCms教程
  • PHPCMS v9 安全设置、防范教程-PhpCms教程
  • PHPCMS V9 添加二级导航的思路详解-PhpCms教程
  • PHPCMS V9“密码重试次数太多,请过-xxx分钟后重新登录!”的解决办法
  • 解决phpcms v9首页焦点图显示不正常的问题-PhpCms教程
  • PHPCMS V9网站文件目录安全配置-PhpCms教程
  • PHPCMS V9开发WAP手机网站的教程-PhpCms教程
  • PHPCMS V9使用UEditor和七牛云存储的方法-PhpCms教程
  • 网友评论

    关于我们 - 联系我们 - 广告服务 - 版权声明 - 人才招聘 - 友情链接 - 网站地图 - 帮助 - -

    CopyRight © 2010-2016 源码下载 easck.com , All Rights Reserved

    蒙公网安备 15052402000103号

    蒙ICP备14002389-1号