не могу понять, что происходит со сквидом.
пытаюсь его настроить так, чтобы на сайты по определённому списку он ходил через один прокси, а на все остальные - через другой. список внушителен, и иногда меняется, поэтому вгонять его напрямую в конфиг - весьма неудобно (хоть и можно).
делаю так:
external_acl_type my_int_proxy ttl=86400 children=2 %DST %PORT /usr/lib/squid/my_int_proxy
acl mylist external my_int_proxy
cache_peer_access proxy2 allow !mylist
cache_peer_access proxy2 deny mylist
cache_peer_access proxy1 allow mylist
cache_peer_access proxy1 deny !mylist
сам скриптик (для отладки) в данный момент выглядит так:
#!/usr/bin/perl
$|=1;
while(defined($line=<>)) {
chomp($line);
open(LOG,">>/tmp/q.log");
print LOG "$line\n";
close(LOG);
print "ERR\n";
}
два его экземпляра в памяти при запуске сквида успешно болтаются.
если запускаю скриптик сам, и ввожу ему что-нить, то по нажатию <enter> это что-нить попадает в /tmp/q.log, а в ответ мне выводится ERR. т.е. всё так, как я ожидал.
но сам сквид то ли вообще не спрашивает ничего у скрипта, то ли спрашивает, но как-то по другому, но при любой активности скрипта в /tmp/q.log абсолютно пусто...
идеи у меня пока кончились. пока что просто вогнал весь список в конфиг в виде acl mylist dstdomain ....
работает.
any ideas?