Encaminhar um domínio de destino para um pai Squid 7 diferente
Use pais nomeados e regras cache_peer_access no Squid 7 para escolher um upstream pelo domínio de destino.
Suponha que um domínio parceiro precise usar um proxy upstream designado enquanto os demais pedidos permitidos usam o pai normal. No Squid 7, os peers nomeados e o cache_peer_access expressam essa política:
cache_peer partner-proxy.example parent 3128 0 no-query name=partner_parent
cache_peer general-proxy.example parent 3128 0 no-query name=general_parent
acl partner_domain dstdomain .partner.example
cache_peer_access partner_parent allow partner_domain
cache_peer_access partner_parent deny all
cache_peer_access general_parent deny partner_domain
cache_peer_access general_parent allow all
never_direct allow allEste é um fragmento de encaminhamento para um proxy de reencaminhamento existente com controlo de acesso. Se um teste independente de destino público puder usar pais públicos sem autenticação, escolha candidatos da lista de proxies HTTP para esses endereços sem credenciais de pai configuradas. A rota de produção exigida pelo parceiro continua a ser um acordo de acesso separado. Os nomes dão a cada pai uma identidade inequívoca para as suas regras de acesso.
Para um destino correspondente apenas o partner_parent permanece elegível. Para outros destinos apenas o general_parent permanece elegível. A primeira regra correspondente para cada peer individual decide se esse peer é elegível.
cache_peer_access filtra candidatos; não ordena todos os peers numa cadeia de reserva. Se deixar vários elegíveis, os algoritmos de seleção de peers do Squid escolhem entre eles.
A linha never_direct torna o uso do pai obrigatório neste exemplo. Se o pai necessário não puder ser usado, não é oferecida uma ligação direta como substituto. Mantenha as permissões existentes de cliente e destino em http_access; essas regras decidem que pedidos são admitidos antes da seleção do upstream.
Esta configuração usa a interface documentada do Squid 7. A referência marca o cache_peer_access como indisponível no Squid 8, por isso use a documentação da versão implementada correspondente ao manter esta configuração.