curl 挂代理过程遇到的一个小坑
前提
- 本机地址:127.0.0.1
- 本地 socks5 端口:1086,本地 http 端口:1087
- 系统:macOS 10.13.0
- curl 版本:7.54.0 (x86_64-apple-darwin17.0)
➜ Documents curl -V
curl 7.54.0 (x86_64-apple-darwin17.0) libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz HTTP2 UnixSockets HTTPS-proxy
上面是我本机的,你自己的看好,做好对应即可。在谷歌找了一下,没发现准确的说清楚怎么挂代理的,很多都不能用,我也不知道为什么,能用我也不至于写这篇文章了。
本人不熟悉命令行,其实命令 curl --help
里都写了。
临时代理
临时代理格式
➜ ~ curl -x 代理地址 网址
- 代理地址:需要写清楚到底是
socks5
还是http
,非常重要,如果不写,默认http
具体例子
socks5
➜ ~ curl -x socks5://127.0.0.1:1086 cip.cc
IP : 5X.1XX.1XX.1XX
地址 : 中国 香港
数据二 : 香港
数据三 : 中国香港香港
http
➜ ~ curl -x http://127.0.0.1:1087 cip.cc
IP : 5X.1XX.1XX.1XX
地址 : 中国 香港
数据二 : 香港
数据三 : 中国香港香港
永久代理
用户目录下创建 .curlrc
(文件名就是这个) 文件,文件内容:
socks5
proxy="socks5://127.0.0.1:1086"
http
proxy="http://127.0.0.1:1087"
- 注意协议与端口的匹配
参考链接
https://www.tylinux.com/2016/08/30/live-under-console-on-macOS/