qq关注显示服务器请求中,网站添加QQ登陆API调试报错"可能是服务器无法请求https协议"...

网站添加QQ登陆API调试报错,错误信息如下:Warning: file_get_contents(

https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=100392036&redirect_uri=oauth%2Fcallback.php&client_secret=e50df09387f0326b85cbe36782f5fd7d&code=F5611ED4CE40698E2E8319276881F61F

) [function.file-get-contents]: failed to open stream: No such file or directory in D:\wwwroot\b2bku\API\class\URL.class.php on line 49

可能是服务器无法请求https协议

可能未开启curl支持,请尝试开启curl支持,重启web服务器,如果问题仍未解决,请联系我们

但服务器已经开启curl支持了,为什么还提示这个呢?解决方法有如下两种:

1、打开php_openssl.dll模块

2、或者修改api\comm\utils.php (PHP SDK是这个)

将function get_url_contents($url)

{

if (ini_get("allow_url_fopen") == "1")

return file_get_contents($url);

$ch = curl_init();

curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

curl_setopt($ch, CURLOPT_URL, $url);

$result =  curl_exec($ch);

curl_close($ch);

return $result;

}

替换为:function get_url_contents($url)

{

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,$url);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

return $result;

}

原因如下:

OpenSSL没有开启!

OpenSSL是一套用于SSL/TLS协议的加密工具,其作用有:

1.生成私有密钥.

2.生成证书,即数字签名证书,它包含一个公有密钥,可以用来单向的加密和解密数据.即,使用公钥加密的数据,只能使用

私有密钥解密.使用私钥加密的数据,可以使用公钥来解密.

3.计算信息摘要.

4.SSL/TLS客户端和服务器端测试.

5.处理S/MIME标记和邮件的加密.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值