我希望我的 Python 脚本通过脚本中指定的 IP 访问 URL,而不是通过域的默认 DNS。基本上,我想要在 /etc/hosts 文件中添加一个条目,但我希望更改仅应用于我的脚本,而不是全局应用于整个服务器。有任何想法吗?
问问题
874 次
2 回答
2
这是否有效取决于远端站点是否使用基于 HTTP/1.1 命名的虚拟主机。
如果不是,您可以根据@Greg 的回答简单地将 URL 的主机名部分替换为他们的 IP 地址。
但是,如果是这样,您必须确保将正确的Host:
标头作为 HTTP 请求的一部分发送。没有它,虚拟主机 Web 服务器将不知道要为您提供哪个站点的内容。请参阅您的 HTTP 客户端 API(Curl?)以查看您是否可以添加或更改默认请求标头。
于 2010-07-06T09:06:32.640 回答
0
您可以使用显式 IP 号码通过将其嵌入到 URL 中来连接到特定机器:http://127.0.0.1/index.html
相当于http://localhost/index.html
也就是说,使用 IP 号码而不是 DNS 条目并不是一个好主意。IP 比 DNS 条目更频繁地更改,这意味着如果您对地址进行硬编码而不是让它正常解析,您的脚本更有可能被破坏。
于 2010-07-06T05:21:01.457 回答