我可以configurationUbuntu使用一个代理网站的子集?

我应该在前面说明,我基本上不了解代理(尽pipe已经写了一个玩具caching代理一会儿回来:))。

我有一小群服务器在防火墙后面运行。 其中一台服务器(“server0”)可以通过端口8080上的http连接,其余的都被阻止。 我想在server0上设置一个代理,以便将请求转发到server1,server2等。

我也想configuration我的客户端机器(所有运行的Ubuntu)在server0上使用代理:8080,但仅用于访问服务器*的URL,而不是其余的stream量。 到目前为止,我只能find为所有stream量设置代理的说明,而不仅仅是匹配某个正则expression式。

这可能吗? 任何提示/链接/等?

还有关于适当select代理软件的build议将会很好。

谢谢。

我个人使用清漆作为反向代理(我发现更多的任务,而不是作为一个反向代理诞生的Squid),它具有高级function,redirectstream量不同的内容后端,取决于你想要什么循环法,正则expression式,负载均衡…这真的很强大)。 如果你对此感兴趣,我可以详细阐述一下。

关于问题的第二部分(仅针对某些地址使用代理),您可以像使用PAC文件一样简单:

function FindProxyForURL(url, host) { if (shExpMatch(host, "*.mydomain.com")) return "SOCKS 10.0.0.1:1080"; return "DIRECT"; } 

FoxyProxy是一个Firefox扩展,它允许你configurationFireFox,所以匹配特定正则expression式的URL会被发送出一个特定的代理。 这听起来像你想要的,但是集中pipe理可能很困难。

有可能使用WPAD有一个代理pac文件,说只有某些URL出去某些代理,但我不知道,将不得不研究。

这种做法听起来过于复杂。 我会build议最好有一个中央代理人,每个人都经历,然后代理人本身可以决定在哪里转发请求。 我相信在Squid,你可以说“请求这个URL应该通过这个其他代理转发”。

我想你要找的东西就像鱿鱼 (反向代理)

像@mohsen说的,听起来像你想要一个反向代理。 如果鱿鱼似乎有点太麻烦设置,你可以尝试一些简单的像磅或清漆 。 或者,像lighttpd这样的东西可以configuration为mod_proxy的反向代理。