我正在尝试使用squid 3.3.8附带的“purge”工具来清除squid缓存中的一些对象,并使用ufs存储。“purge”工作正常,它可以从缓存的对象中提取URL,但是使用rock存储,可用sine squid 3.2,“purge”报告以下错误:
no cache_dir or error accessing "/opt/squid/3.3.8/etc/squid.conf"
这是相应的squid.conf:
pid_filename /var/run/squid.pid
cache_effective_user user
cache_effective_group user
http_port 3128
cache_mem 0 MB
#cache_dir ufs /var/squid/cache/ 500 16 256
cache_dir rock /var/squid/rock 5120 max-size=102400
acl my_machine src 192.168.2.22
http_access allow my_machine
acl localnet src 127.0.0.1
acl Purge method PURGE
http_access allow localnet Purge
http_access deny all Purge
我的配置文件有问题,或者squid purge不适用于摇滚商店吗?
答案 0 :(得分:0)
我刚刚阅读了purge的源代码,在/purge/conffile.cc中,它使用以下正则表达式来搜索squid.conf中的cache_dir;
^[ \t]*cache_dir([ \t]+([[:alpha:]]+))?[ \t]+([[:graph:]]+)[ \t]+([0-9]+)[ \t]+([0-9]+)[ \t]+([0-9]+)
这个正则表达式只能匹配ufs,aufs和diskd,但不能匹配rock:
cache_dir rock /var/squid/rock 5120 max-size=102400
从这个角度来看,清除不支持摇滚店。