鱿鱼Acl规则的问题

在squid.conf中,有安全端口和ssl端口的指令:

acl safe_ports (list of ports) acl ssl_port 443 

然后:

 http_access deny !safe_ports http_access deny !ssl_port 

我的问题是:为什么http_access的默认值是拒绝!safe_ports和!ssl_port,为什么不是http_access允许safe_ports或http_access允许ssl_port?

如果你做了这样的事情:

 http_access allow safe_ports 

然后,所有的端口将被打开,除非你添加一个指令来拒绝每个端口的访问:

 http_access deny unsafe_ports 

其中unsafe_ports正好是safe_ports,但是定义一个安全端口列表要比不安全端口列表容易得多,因为后者几乎有65536个条目。

那么做起来容易很多,效率可能更高

 http_access deny !safe_ports