MS是个很麻烦的问题,不简单是从php.ini中去掉
;extension=php_openssl.dll
和把dll复制到c:\windows\system32目录中
你会发现在PHPinfo里,还是看不到openssl的信息。
————————————-一条分隔线————————————-
看这里的文档:
http://www.php.net/manual/en/openssl.installation.php
大意是说:
在Apache加载PHP模式下,加载这两个dll是有顺序,先去Apache的bin下的dll加载,一看真是两个文件名一模一样,就是大小不一样,
换上新的文件,phpinfo又出现OpenSSL了
但是http request 还是得不到他的信息,真郁闷,最后还是用Curl来解决这个问题
// 初始化一个 cURL 对象
$curl = curl_init();
// 设置你需要抓取的URL
curl_setopt($curl, CURLOPT_URL, ‘https://XXXXX/xxx.xxx’);
//SSL验证
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //如果需要验证的话,设成false
// 设置header
curl_setopt($curl, CURLOPT_HEADER, 1); //如果为1,会打印出来header的
// 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
// 运行cURL,请求网页
$data = curl_exec($curl);
// 关闭URL请求
curl_close($curl);
// 显示获得的数据
var_dump($data);