我目前有一个golang程序,我有一个像这样的超级配置文件
[program:yout_go]
command = /bin/sh -c 'http_proxy=user:password@123.123.123.123 /home/www/program -env prod'
directory = /home/www/
enviroment=PATH='/home/www/env/bin:/usr/bin'
user = user
autorestart = true
stderr_logfile = /var/log/program/err.log
stdout_logfile = /var/log/program/out.log
目前我通过1个代理运行它,但我想让它运行更多代理。
我有什么方法可以做到这一点?例如从代理列表中提取http_proxy或者我是否必须通过它来运行goprogram?
答案 0 :(得分:2)
Go http包使用HTTP_PROXY
,HTTPS_PROXY
和NO_PROXY
环境变量,就像其他程序一样,并查找单个网址。
如果您想轮换多个代理,则需要向http.Transport
提供自定义Proxy
功能,而不是依赖默认http.ProxyFromEnvironment
。