在 Windows 领域,只有 Chrome 和 IE 以及少数其他软件使用 IE 的内部代理设置。我想知道它在 Ubuntu/Linux 中通常如何工作?
在我看来,通常只需设置 HTTP_PROXY 环境变量即可被程序捕获,但这就是 open network-proxy 所做的一切?软件可以通过建立直接连接来忽略此设置吗?这实际上是由他们决定的吗?或者,一旦我设置了系统范围的代理设置,它就会重新路由所有内容?
答案1
系统范围的代理设置只是代理设置的另一个统一位置。它实际上修改了不同应用程序的配置文件的位置。您是否注意到,系统范围的代理设置要求输入两次密码?这主要是因为修改了与配置文件相对应的两个管理文件。
是的,从 10.10 和 11.10 开始,一些应用程序已被排除在系统范围的代理设置之外,其中最值得注意的是 synaptic。
此外,应用程序可以绕过系统范围的设置并再次使用自己的设置,最显著的是 synaptics 和 Mozilla Firefox(它也包含系统设置选项)。
答案2
软件是否使用代理设置由程序员决定。虽然很多软件都使用代理设置,但有些程序根本不使用代理(例如 ubuntuone-filesync)。
系统范围的代理设置修改
- /etc/环境
- /etc/apt/apt.conf
- /etc/gconf/gconf.xml.defaults/%gconf-tree.xml
(适用于 Ubuntu 11.04)