curl - 解决PHP CURL库中的等价物

San*_*an4 8 php ssl curl http

curl --resolve ....在PHP CURL库中是否有等价物?

背景:我有循环DNS(一个域名解析为多个IP),我想向特定主机发送请求.我使用基于apache名称的虚拟主机,因此必须在HTTP请求中显示正确的域名.

我已经尝试在请求URL中指定IP:curl_setopt($ch, CURLOPT_URL, '127.0.0.1')和使用curl_setopt($ch, CURLOPT_HTTPHEADER, 'Host: example.com').它适用于HTTP,但对于HTTPS,我得到SSL验证错误(显然CURL验证证书与URL主机名和非Host:主机名).

使用hosts文件不是一个方便的选择.

Dan*_*erg 13

首先,回答任何 curl选项转换为libcurl(或PHP/CURL)的答案的最佳方法是使用--libcurl选项.

如果这样做,您将了解到--resolve转换为使用libcurl的CURLOPT_RESOLVE,自5.5.0以来在PHP中受支持.自7.21.3起由libcurl支持.