我意识到在linux以及许多程序中,可以设置http_proxy和https_proxy。我看到很多指南建议:
http_proxy = http://host:port
https_proxy = https://host:port
我有几个问题:
程序如何确定要连接的代理(http 或 https)?我在 docker alphine 图像中进行了测试,发现 wget gethttps://google.com通过http_proxy。看来这并不取决于使用哪个协议。
host:port前面的http、https是什么意思?它是否建议使用哪种协议连接到代理服务器?当我发现我实际上可以使用http://主机:端口对于 https_proxy。另外,设置不带http
http_proxy = 主机:端口
也有效。
谢谢你!
答案1
我同意这很令人困惑。有些程序仅使用 http_proxy 并根据 HTTP/HTTPS 请求的需要调整协议。
这是什么https://www.npmjs.com/package/proxy-agent无论如何。
其他一些程序同时使用两者。 HTTPS_PROXY 用于 https 请求,HTTP_PROXY 用于 http 请求。
但我认为对于大多数程序来说,仅使用单个 HTTP_PROXY 并根据需要调整协议是有意义的。在当今时代,我看不到同时使用 HTTP 和 HTTPS 并拥有单独代理的良好用例。