在 PHP CURL 库中是否有 curl --resolve ....
的等价物?
背景:我有循环 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
文件不是一个方便的选择。
最佳答案
首先,了解任何 curl 选项如何转换为 libcurl(或 PHP/CURL)的最佳方法是使用 --libcurl选项。
如果这样做,您将了解到 --resolve转换为 CURLOPT_RESOLVE使用 libcurl,PHP 支持 since 5.5.0 .自 7.21.3 起由 libcurl 支持.
关于php - curl --resolve 在 PHP CURL 库中等效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10433016/