gpt4 book ai didi

php - 为什么我们在 Windows 中需要 CURLOPT_SSL_VERIFYPEER

转载 作者:搜寻专家 更新时间:2023-10-31 20:36:31 25 4
gpt4 key购买 nike

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

基本上我做了一个脚本来检查 SOCKS5 是 live 还是 dead

当我在 Linux VPSiMac 上测试我的脚本时,它工作得很好,但是当我在 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.cainfophp.ini 中配置它指令,或在运行时使用:

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

如果您没有副本,请拿一份最近的 here .

虽然禁用对等验证是一种解决方法,但这可能是不安全的,因为您禁用了确保您与您认为的网站安全通信的检查。

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

关于php - 为什么我们在 Windows 中需要 CURLOPT_SSL_VERIFYPEER,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33795717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com