Назад | Перейти на главную страницу

Squid выбирает родителя в зависимости от запрошенного URL?

У меня есть базовая конфигурация squid, которая подключается к Интернету напрямую, мне нужен способ использовать родительский узел в зависимости от URL-адреса.

Так например:

Это упрощенный пример, который можно решить с помощью DNS, но я делаю кое-что более сложное.

Я пробовал поискать в Google результаты по этому поводу, но большинство результатов не имеет значения. Спасибо.

Из кальмар FAQ.


Директива cache_peer_domain позволяет указать, что определенные кеши братьев и сестер или родителей для определенных доменов:

#  squid.conf - On the host: sv.cache.nlanr.net
#
#  Format is: hostname  type  http_port  udp_port
#
cache_peer electraglide.geog.unsw.edu.au parent 3128 3130
cache_peer cache1.nzgate.net.nz          parent 3128 3130
cache_peer pb.cache.nlanr.net   parent 3128 3130
cache_peer it.cache.nlanr.net   parent 3128 3130
cache_peer sd.cache.nlanr.net   parent 3128 3130
cache_peer uc.cache.nlanr.net   sibling 3128 3130
cache_peer bo.cache.nlanr.net   sibling 3128 3130
cache_peer_domain electraglide.geog.unsw.edu.au .au
cache_peer_domain cache1.nzgate.net.nz   .au .aq .fj .nz
cache_peer_domain pb.cache.nlanr.net     .uk .de .fr .no .se .it
cache_peer_domain it.cache.nlanr.net     .uk .de .fr .no .se .it
cache_peer_domain sd.cache.nlanr.net     .mx .za .mu .zm

Приведенная выше конфигурация указывает, что кеш будет использовать pb.cache.nlanr.net и it.cache.nlanr.net для доменов uk, de, fr, no, se и it, sd.cache.nlanr.net для доменов mx, za , mu и zm, а также cache1.nzgate.net.nz для доменов au, aq, fj и nz.


Комментарии о cache_peer_domain из примера конфигурационного файла squid.

#  TAG: cache_peer_domain
#       Use to limit the domains for which a neighbor cache will be
#       queried.  Usage:
#
#       cache_peer_domain cache-host domain [domain ...]
#       cache_peer_domain cache-host !domain
#
#       For example, specifying
#
#               cache_peer_domain parent.foo.net        .edu
#
#       has the effect such that UDP query packets are sent to
#       'bigserver' only when the requested object exists on a
#       server in the .edu domain.  Prefixing the domain name
#       with '!' means the cache will be queried for objects
#       NOT in that domain.
#
#       NOTE:   * Any number of domains may be given for a cache-host,
#                 either on the same or separate lines.
#               * When multiple domains are given for a particular
#                 cache-host, the first matched domain is applied.
#               * Cache hosts with no domain restrictions are queried
#                 for all requests.
#               * There are no defaults.
#               * There is also a 'cache_peer_access' tag in the ACL
#                 section.
#
#Default:
# none