网站增加QQ登陆API调试报错"可能是服务器无法请求https协议"
网站增加QQ登陆API调试报错,错误信息如下:
Bash
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是这个)
将
PHP
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;
}
替换为:
PHP
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标记和邮件的加密.
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 网站增加QQ登陆API调试报错"可能是服务器无法请求https协议"