【发布时间】:2015-05-12 17:00:21
【问题描述】:
如何阻止 Curl 上的 DNS 查找?
所以,我认为有两种选择,有:
- 使用 HTTP(或其他类型?)代理。但是,DNS Loockup 将由 Proxy 或“原始”服务器进行?
示例: curl_setopt($ch, CURLOPT_PROXY, '0.0.0.');
- 为域设置默认 DNS。在 Windows se 中有一个“ETC/HOSTS”文件,但它在 Centos 上的什么位置?如何在 CURL 中设置此默认值?因为 CURL 会继续尝试查找 DNS。
这行得通吗?
谢谢大家。 :)
【问题讨论】:
-
http 与 dns 几乎没有关系,除了 http 使用 dns 来解析 hostname->ip,就像网络上的几乎所有其他东西一样。如果您不想执行 dns 查找,请不要使用主机名:仅使用 IP。
-
但直接 IP 不适用于 CURL。我试试看。 ://
-
可能是因为您尝试访问的站点是名称托管的,这需要
Host:标头,例如curl 到 IP,但在请求标头中强制Host: example.com。 -
在 CentOS 中,它实际上位于 etc/hosts。如 /etc/hosts ...