Сейчас у меня следующая конфигурация:
# Squid normally listens to port 3128
http_port 3128
cache_peer proxy1_address parent proxy1_port 0 proxy-only default login=name1:pass1
never_direct allow all
Теперь мне нужно настроить squid таким образом, чтобы все входящие запросы на 3128 перенаправлялись на proxy1 (как он сейчас работает), а все входящие запросы на 3127 перенаправлялись на proxy2. Возможно ли это сделать?
Моя текущая конфигурация не работает:
http_port 3128
http_port 3127
acl port_3128 port 3128
acl port_3127 port 3127
# 3128
cache_peer proxy01 parent 3128 0 no-query originserver name=proxy3128
cache_peer_access proxy3128 allow port_3128
cache_peer_access proxy3128 deny port_3127
# 3127
cache_peer proxy02 parent 3128 0 no-query originserver name=proxy3127
cache_peer_access proxy3127 allow port_3127
cache_peer_access proxy3127 deny port_3128
Спасибо за помощь, наконец-то нашел рабочую конфигурацию (спасибо, ребята из списка рассылки squid)
http_port 3128 name=port_3128
http_port 3127 name=port_3127
nonhierarchical_direct off
acl port_3128_acl myportname port_3128
acl port_3127_acl myportname port_3127
always_direct deny port_3128_acl
always_direct deny port_3127_acl
never_direct allow port_3128_acl
never_direct allow port_3127_acl
# 3128
cache_peer proxy1 parent 3128 0 proxy-only default name=proxy3128
cache_peer_access proxy3128 allow port_3128_acl
cache_peer_access proxy3128 deny all
# 3127
cache_peer proxy2 parent 3128 0 proxy-only default name=proxy3127
cache_peer_access proxy3127 allow port_3127_acl
cache_peer_access proxy3127 deny all
Вроде возможно, но, честно говоря, раньше не пробовал. Вы можете комбинировать acl
и cache_peer_access
чтобы контролировать, какой трафик передается какому партнеру.
acl first_port myport 3128
cache_peer_access proxy1_address allow first_port
Вам может потребоваться взглянуть на страница документации по squid. Кроме того, вот пример использования его для нескольких внутренних серверов.