描述
在准备启动网站或调试已上线网站的问题时,有时在从网站请求内容时绕过 CDN 和代理层会很有帮助,方法是将这些 Web 请求直接发送到特定 IP 地址而不使用网站的公共DNS 记录。这种将 Web 请求直接“固定”到服务器的做法可以通过 更改您的 /etc/hosts 文件来完成,这将导致对指定域名(例如:“ www.example.com ”)的请求从您的本地计算机到指定的 IP 地址(例如:127.0.0.1),直到您对 /etc/hosts 所做的更改被还原。
背景
但是,如果您想在不修改系统配置文件的情况下将单个请求固定到 IP 地址怎么办?这种“临时”请求固定可以通过带有 curl 的命令行来实现,它提供了一个特殊的 resolve 选项 formatted --resolve [DOMAIN]:[PORT]:[IP],它可以路由在执行 CURL 命令期间执行的与给定 [DOMAIN] 和 [匹配的所有 Web 请求PORT] 到指定的 [IP] 地址。此选项指定的值(可以在单个命令中多次调用,以将多个域/端口组合路由到各种 IP 地址)将应用于初始请求,以及 CURL 在命令过程中遵循的任何重定向
命令如下所示:
curl http://www.example.com --resolve www.example.com:80:127.0.0.1
当通过端口 80 (HTTP)请求“ www.example.com ”时,将强制 CURL 使用“127.0.0.1”作为 IP 地址。
上面的命令可以扩展为如下所示:
curl http://www.example.com --resolve www.example.com:80:127.0.0.1 --resolve www.example.com:443:127.0.0.1
这将强制 CURL 使用“127.0.0.1”作为通过端口 80(HTTP 和443 (HTTPS))向“www.example.com ”请求的 IP 地址 。这对于自动重定向 HTTP 请求的站点很有用HTTPS 请求作为安全措施。文章来源:https://www.toymoban.com/news/detail-514905.html
–resolve 可以为单个 CURL 命令多次指定(以及针对多个域/端口组合),允许您为您知道将在不同域和端口上多次重定向的请求建立复杂的路由规则。文章来源地址https://www.toymoban.com/news/detail-514905.html
到了这里,关于使用 CURL 的“--resolve“选项将请求固定到 IP 地址的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!