PHP使用Curl访问HTTPS服务器的时候
需要注意的是如果没有证书访问的话
需要将CURL中的两项配置关掉
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);//禁用后cURL将终止从服务端进行验证
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);//不验证HTTPS证书
CURLOPT_SSL_VERIFYHOST的值
设为0表示不检查证书
设为1表示检查证书中是否有CN(common name)字段
设为2表示在1的基础上校验当前的域名是否与CN匹配
而libcurl早期版本中这个变量是boolean值,为true时作用同目前设置为2,后来出于调试需求,增加了仅校验是否有CN字段的选项,因此两个值true/false就不够用了,升级为0/1/2三个值。
如果不需要检查证书的话最好使用0
引自 libcurl API
When the verify value is 1, curl_easy_setopt will return an error and
the option value will not be changed. It was previously (in 7.28.0 and
earlier) a debug option of some sorts, but it is no longer supported
due to frequently leading to programmer mistakes. Future versions will
stop returning an error for 1 and just treat 1 and 2 the same.
对于CURL详细设置的说明请移步http://www.educity.cn/develop/406212.html