Здравствуйте,Использую Squid 2.6.19 STABLE, и столкнулся со следующей проблемой: в access.log нет вообще ни одного TCP_HIT/TCP_MEM_HIT, сполошь TCP_MISS.
При этом в store.log - одни RELEASE;
Приведу конфиг:http_port 3128 transparent
acl QUERY urlpath_regex cgi-bin \\?
no_cache deny QUERYcache_mem 96 MB
maximum_object_size 100 MBcache_dir ufs /usr/local/squid/var/cache 2048 16 256
cache_store_log /usr/local/squid/var/logs/store.log
cache_access_log /usr/local/squid/var/logs/access.logrequest_body_max_size 0
refresh_pattern ^http: 0 0% 0 override-expirenegative_ttl 1 minutes
range_offset_limit 0 KB
peer_connect_timeout 20 seconds
read_timeout 5 minutes
request_timeout 60 seconds
half_closed_clients offcache_effective_user squid
cache_effective_group squidforwarded_for off
header_access Via deny all
visible_hostname squid
ACL не привожу - они тут не нужны. Squid используется как прозрачный прокси, и это нормально работает.
Проверено - в том месте, где должен храниться кэш, с правами все нормально (owner выставлен squid:squid, да и 777 уже пробовалось)Не понимаю, почему ничего никогда не кладется в кэш? .. Директории остаются нетронутыми вообще всегда. Туда совсем ничего не попадает.
Вот участок access.log:
1213168266.258 89 192.168.2.178 TCP_MISS/200 288 GET http://www.habrahabr.ru/i/corner_2.gif - DIRECT/62.213.122.2 image/gif
1213168266.421 216 192.168.2.178 TCP_MISS/200 287 GET http://www.habrahabr.ru/i/corner_2r.gif - DIRECT/62.213.122.2 image/gif
1213168266.453 215 192.168.2.178 TCP_MISS/200 301 GET http://www.habrahabr.ru/i/vote_down_un.gif - DIRECT/62.213.122.2 image/gif
1213168266.455 203 192.168.2.178 TCP_MISS/200 300 GET http://www.habrahabr.ru/i/vote_up_un.gif - DIRECT/62.213.122.2 image/gifИ участок store.log:
1213168376.670 RELEASE -1 FFFFFFFF C226AAA7FFFD826B3714D5C7BBF6F759 200 1213168095 -1 -1 text/html 2067/2067 GET http://fileupload7.filefront.c
1213168381.851 RELEASE -1 FFFFFFFF E6D66AF2718CAEE2D02E165AA4421B58 200 1213168101 -1 -1 text/html 2067/2067 GET http://fileupload7.filefront.c
>refresh_pattern ^http: 0 0% 0 override-expireВторой и третий нули, видимо, говорят сквиду, что объекты неактуальны уже по прибытии.
Ну, на ftp: какой сходи -- может "закешируется"...
>>refresh_pattern ^http: 0 0% 0 override-expire
>
>Второй и третий нули, видимо, говорят сквиду, что объекты неактуальны уже по
>прибытии.
>
>Ну, на ftp: какой сходи -- может "закешируется"...Попробовал убрать эту директиву, по умолчанию там:
refresh_pattern ^ftp: &n... 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320Та же картина.
>[оверквотинг удален]
>
>refresh_pattern ^ftp: &n...
>1440 20% 10080
>refresh_pattern ^gopher: 1440
> 0% 1440
>refresh_pattern .
> 0
>20% 4320
>
>Та же картина.Та же проблема со сквидом 3.x на Debian Lenny, никогда не попадает в кеш, настройки схожие.
EuGen, у тебя получилось решить эту проблему или хотя бы понять в чем причина?
>acl QUERY urlpath_regex cgi-bin \\?
>no_cache deny QUERYЗдесь--^^^ ошибка.
Надо либо
cache deny QUERY
, либо %-)))
no_cache deny !QUERY...
Да, первый раз меня строка
refresh_pattern ^http: 0 0% 0 override-expire
очень смутила. Да и сейчас я её затрудняюсь интерпретировать. Может быть, оно тоже даёт не-кеширование (http-запросов в частности).