最近遇到的问题:一个项目从服务器A完整移到服务器B,两者同时4G的,结果发现在B上的接口运行效率明显比在原来的A上慢好多。通过对比服务器的配置信息和所有代码数据,再然后排查错误日志,发现了下面的报错:
curl_setopt(): CURLOPT_SSL_VERIFYHOST no longer accepts the value 1,value 2 will be used instead in cron.php on line 9
然后,我便找度娘聊了聊,发现:
CURLOPT_SSL_VERIFYHOST
的值
0
表示不检查证书1
表示检查证书中是否有CN(common name)
字段2
表示在1
的基础上校验当前的域名是否与CN匹配
而libcurl
早期版本中这个变量是boolean
值,为true
时作用同目前设置为2
,后来出于调试需求
,增加了仅校验是否有CN字段
的选项,因此两个值true/false
就不够用了,升级为0/1/2
三个值。
再后来(libcurl_7.28.1
之后的版本),这个调试选项由于经常被开发者用错
,被去掉了,因此目前也不支持1
了,只有0/2
两种取值。
curl参数设置的问题 有关CURLOPT_SSL_VERIFYHOST
https://www.51-n.com/t-4265-1-1.html
虽然不是很明白,总之true值是不能用了,要用2替代是吧,好,我就改2。哎嘿,在运行之后,真多好了,运行效率高了很多。问题解决了,但我是有点小疑问,为什么之前的服务器A上用true的时候没法出现问题呢,wamp安装的也都是同样的环境版本。。。