PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PHP-为什么我们在Windows中需要CURLOPT_SSL_VERIFYPEER大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我将稍微解释一下我的脚本,以便您可以理解我的问题.

基本上我做了一个脚本来检查SOCKS5是否存在.

当我在Linux VPS和iMac上测试我的脚本时,它运行良好,但是当我在Windows中使用wampserver测试它时,直到将这行添加到cURL时,它才起作用:

curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);

谁能向我解释为什么我在Windows中需要此行,而在Linux服务器上却不需要?

解决方法:

此cURL手册页在SSL Certificates上描述了连接到SSL / TLS安全主机时证书验证的过程.

您需要在Windows上将CURLOPT_SSL_VERIFYPEER设置为false的原因是,用于验证证书的CA捆绑包丢失了(或者没有认路径编译到cURL中,因此您需要明确定义它).

您可以使用curl.cainfo指令在PHP.ini中进行配置,也可以在运行时使用以下命令进行指定:

curl_setopt($curl, CURLOPT_CAFILE, 'C:/path/to/ca-bundle.crt');

如果没有副本,请获取最近的副本here.

尽管禁用对等验证是一种解决方法,但这可能是不安全的,因为您正在禁用非常检查,以确保与您认为的网站安全地通信.

任何人都可以生成自签名证书来模拟域,但是如果无法验证证书,除非您忽略或忽略此检查(即CURLOPT_SSL_VERIFYPEER = false),否则浏览器或客户端(如cURL)将失败.

大佬总结

以上是大佬教程为你收集整理的PHP-为什么我们在Windows中需要CURLOPT_SSL_VERIFYPEER全部内容,希望文章能够帮你解决PHP-为什么我们在Windows中需要CURLOPT_SSL_VERIFYPEER所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: