这与需要身份验证的代理服务器后面的 Ubuntu 14.04 有关。
我已设法通过代理使 apt-get 工作。我的/etc/apt/apt.conf
代理如下所示:
Acquire::http::proxy "http://my_proxy_server:3128/";
Acquire::https::proxy "https://my_proxy_server:3128/";
Acquire::ftp::proxy "ftp://my_proxy_server:3128/";
Acquire::socks::proxy "socks://my_proxy_server:3128/";
我的环境变量看起来相同——我有http_proxy
、https_proxy
和ftp_proxy
设置socks_proxy
。
我有一系列的问题:
此代理服务器需要身份验证。我没有为 apt-get 指定用户名和密码。但是,我仍然可以这样做,
apt-get update
并且它运行正常。为什么?没有任何其他程序无法正常工作。例如,
pip install
会失败并显示无法获取的消息 https://pypi.python.org/simple
设置代理的正确方法是什么?
更新
我安装了 google-chrome-stable 并尝试连接到互联网。它要求我进行代理身份验证,我提供了。完成此步骤后,wget
似乎pip
运行正常!这真的很奇怪。我猜 Chrome 做了一些配置,允许其他应用程序也连接。
现在,新的问题是,如何将其配置为 root?例如,我可以这样做pip install ...
,它可以很好地下载软件包,但如果我这样做sudo pip install ...
,它就无法连接到 pypi 网站。
答案1
测试一下:
打开一个终端。Ctrl++AltT
运行:
$ sudo -i
# nano /etc/bash.bashrc
将以下几行放入文件中:
export http_proxy=http://my_proxy_server:3128/
export https_proxy=https://my_proxy_server:3128/
export ftp_proxy=http://my_proxy_server:3128/
export socks_proxy=socks://my_proxy_server:3128/
Ctrl+ O,保存文件。Ctrl+ X,关闭 nano。
$ sudo -i
# nano /etc/environment
将以下几行放入文件中
http_proxy=http://my_proxy_server:3128/
https_proxy=https://my_proxy_server:3128/
ftp_proxy=http://my_proxy_server:3128/
socks_proxy=socks://my_proxy_server:3128/
Ctrl+ O,保存文件。Ctrl+ X,关闭 nano。