Привет, всем.
помогите настроить сквид.
Значит,стоит он на gateway для домашней сети , работает как прозрачная прокся.
при обращении к страничке c форматом *.htm на удаленном сервере ie получает ее один раз потом эта же странички уже измененная все ровно грузится из кэша.
лог сквида при просмтре через ie: 1117562391.180 394 192.168.0.2 TCP_IMS_HIT/304 215 GET http://xxx.ru/warn.htm - NONE/- text/html
на стороне вэбсервера в логах нечего в этот момент не приходило.
дописал несколько строк в этот файл но ie мне показывает старый файл
лог сквида:1117562592.531 1 192.168.0.2 TCP_IMS_HIT/304 215 GET http://xxx.ru/warn.htm - NONE/- text/html
1117562593.467 935 192.168.0.2 TCP_IMS_HIT/304 215 GET http://xxx.ru/warn.htm - NONE/- text/html
вэб-сервер тоже ничего не видел чтобы к нему обращались на этот файл.
попробовал тоже самое проделать с оперой , первый раз когда открываю этот файл , опера получает его со сквида
лог сквида:1117562901.266 1 192.168.0.2 TCP_MEM_HIT/200 6111 GET http://xxx.ru/warn.htm - NONE/- text/html
после рефреша, опреа показывает мне измененный файл как надо
лог сквида:1117563029.486 338 192.168.0.2 TCP_CLIENT_REFRESH_MISS/200 6099 GET http://xxx.ru/warn.htm - DIRECT/xxx.ru text/html
, но если еще раз обновить страничку в опере при этом на вэб-сервере ее не изменять то он все ровно полезит на вэб-сервер , что тоже не правильно .
лог сквида:1117563264.844 177 192.168.0.2 TCP_CLIENT_REFRESH_MISS/200 6099 GET http://xxx.ru/warn.htm - DIRECT/xxx.ru text/htmlЯ хочу чтобы сквид дергал любой контент только тогда , когда данные этого файла (любого) были изменены на сервере или просрочены.
Так же , если вы знаете что можно в моем конфиге изменить для большей работоспособности сквида, милости прошу :)
pc: p4-1800 256mbytes
os: freebsd 5.3
версия сквида и опции при конфигурации: Squid Cache: Version 2.5.STABLE10
configure options: --enable-removal-policies --enable-delay-pools --enable-storeio=ufs
раздел на котором лежит кэш 16 гигов
конфиг:http_port 127.0.0.1:3128
icp_port 0
hierarchy_stoplist cgi-bin ? php
acl QUERY urlpath_regex cgi-bin \? php
no_cache deny QUERY
cache_mem 100 MB
cache_swap_low 50
cache_swap_high 65
maximum_object_size 16384 KB
cache_replacement_policy heap GDSF
memory_replacement_policy heap LFUDA
cache_dir ufs /usr/local/squid/var/cache 8000 32 512
cache_access_log /usr/local/squid/var/logs/access.log
cache_log /usr/local/squid/var/logs/cache.log
cache_store_log /usr/local/squid/var/logs/store.log
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
refresh_pattern ^ftp: &n... 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i \.gif$ 2880 700% 8640 override-lastmod override-expire
refresh_pattern -i \.png$ 2880 700% 8640 override-lastmod override-expire
refresh_pattern -i \.jpg$ 2880 700% 8640 override-lastmod override-expire
refresh_pattern -i \.jpeg$ 2880 700% 8640 override-lastmod override-expire
refresh_pattern -i \.pdf$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.zip$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.tar$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.gz$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.tgz$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.exe$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.doc$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.rtf$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.xls$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.prz$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.ppt$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.txt$ 4320 1000% 8640 override-lastmod override-expire
refresh_pattern -i \.inf$ 4320 1000% 8640 override-lastmod override-expirerefresh_pattern -i \.swf$ 8640 1000% 17280 override-lastmod override-expire
refresh_pattern -i \.mid$ 17280 1000% 24660 override-lastmod override-expire
refresh_pattern -i \.wav$ 17280 1000% 24660 override-lastmod override-expirerefresh_pattern -i \.html$ 1440 90% 8640 override-lastmod override-expire
refresh_pattern -i \.htm$ 1440 90% 8640 override-lastmod override-expire
refresh_pattern -i \.shtml$ 1440 90% 8640 override-lastmod override-expire
refresh_pattern -i \.css$ 1440 90% 8640 override-lastmod override-expire
refresh_pattern -i \.js 1440 90% 8640 override-lastmod override-expire
refresh_pattern -i \/$ 360 50% 8640 override-lastmod override-expireacl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECTacl mynet src 192.168.0.0/16
acl mynet src внешний_ipacl bad url_regex -i "/root/bad_urls.acl"
acl bad_tr url_regex -i ganjawarsacl good_urls url_regex -i "/root/good_urls.acl"
acl ICQ_DOMAIN dstdomain icq.com aol.com
acl ICQ_ADDR dst 64.12.0.0/16 205.188.0.0/16
acl ICQ_PORT port 5190
acl ICQ_PROTO proto HTTPS
http_access allow mynet ICQ_ADDR ICQ_PORT ICQ_PROTO CONNECTalways_direct allow ICQ_DOMAIN ICQ_PORT CONNECT
always_direct allow ICQ_ADDR ICQ_PORT CONNECThttp_access deny !mynet
http_access deny bad
http_access allow good_urls
http_access allow mynet
http_access deny allhttp_reply_access allow mynet
http_reply_access deny !myneticp_access deny all
miss_access allow mynet
miss_access deny allhttpd_accel_uses_host_header on
httpd_accel_host virtual
visible_hostname zaraza
httpd_accel_port 80
httpd_accel_with_proxy onerror_directory /usr/local/squid/share/errors/Russian-1251
coredump_dir /usr/local/squid/var/cache
ie_refresh on
vary_ignore_expire off
>ее один раз потом эта же странички уже измененная все ровно
>грузится из кэша.Возможно, дело в refresh_pattern, особенно в опциях "override-lastmod" "override-expire". Правда, признаюсь, несмотря на многократное перечитывание squid.conf.default я так и не понял, как правильно ими играть.
>cache_mem 100 MB
Пожалуй, лучше поставить поменьше, учитывая эмперической потребление памяти сквидом - раза в три больше этой величины. И, по большому счёту метров 8-16 на hot objects вполне достаточно, имхо.>cache_swap_low 50
>cache_swap_high 65
Эти величины обычно устанавливают в 98-99 %>cache_dir ufs /usr/local/squid/var/cache 8000 32 512
Восемь гиг - слишком много. Вполне достаточно одного-двух.
убери для начала все свои refresh_pattern -i
>убери для начала все свои refresh_pattern -iipmanyak, может разовьём тему refresh_pattern-ов?
Для примера - именно это страница - http://www.opennet.me/openforum/vsluhforumID12/3236.html
У меня в конфиге тоже есть
refresh_pattern -i \.html$ 1440 90% 10080без всяких override. Насколько я понимаю, эти настройки действуют в отсутсвии мета-тегов. Но на этой странице они есть:
<META HTTP-EQUIV="Expires" CONTENT="Tues, 04 Dec 1996 21:00:00 GMT">
<META HTTP-EQUIV="pragma" content="no cache">Однако, всё-равно приходиться делать refresh, чтобы получить актуальные данные. Какие идеи?
>убери для начала все свои refresh_pattern -i
не было поначалу таких здоровых refresh_paternov это уже после того когда я заметил такую фигню.
народ а есть лучше сквида прокся ? (по всем параметрам)