如何设置curl以永久使用代理?[关闭]


103

如何设置“ curl”以在终端中永久使用代理服务器?


25
为什么这个问题被关闭?对我来说似乎很重要……
深化

1
我怀疑这被认为是没有主题的,因为它没有明确提到编程问题中cURL的使用方式(例如,编写脚本来做一些有趣的事情)。它可能已经被表述为更适合ServerFault的sysadmin问题。
iX3

Answers:


172

您可以在〜/ .bashrc文件中创建别名:

alias curl="curl -x <proxy_host>:<proxy_port>"

另一个解决方案是使用(也许是更好的解决方案)~/.curlrc文件(如果文件不存在,则创建它):

proxy = <proxy_host>:<proxy_port>

22
在公司代理中工作时,将代理设置为〜/ .curlrc节省了很多时间。谢谢!
Lachlan McD。

那user:pass auth呢?
Brian Vanderbusch

5
您可以尝试使用以下格式的用户名:password @ proxy:port。
Lachlan McD。

3
如果有人出现并尝试使用Windows / DOSKEY完成此任务,我会使用alias curl=curl --proxy <proxy server:port> $*
Brandon Linton

46

许多UNIX程序都尊重http_proxy环境变量,包括curl。curl接受的格式是[protocol://]<host>[:port]

在您的shell配置中:

export http_proxy http://proxy.server.com:3128

对于代理HTTP S请求,也要设置https_proxy

Curl还允许您在.curlrc文件中(_curlrc在Windows上)进行设置,您可能会认为它更永久:

http_proxy=http://proxy.server.com:3128

11
env变量对我不起作用(在Mac上的Terminal中)。
Kendall Helmstetter Gelner '02

3
要在Mac上代理HTTPS通信,请在调用curl之前在终端中设置http s _proxy env变量对我有用。例如,export https_proxy=https://proxy.server.com:6443
Raghu Dodda '16

1
还要注意,设置HTTP_PROXY / HTTPS_PROXY(大写)不起作用,但是设置http_proxy / https_proxy(小写)可以。
马丁

14

启动时,Curl将在主文件夹中查找.curlrc文件。您可以创建(或编辑)此文件并添加以下行:

proxy = yourproxy.com:8080

这适用于Ubuntu 16.04。该操作系统应被接受。
Frank.Germain

13

一则通知。在Windows上,将_curlrc放在“%APPDATA%”或“%USERPROFILE%\ Application Data”中。


不幸的是,这对我没有用。
David Refoua
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.