htaccess命令拒绝,允许规则

我想通过htaccessdynamic地添加IP到块列表。 我希望有人能告诉我,如果以下将在我的情况下工作(我不确定如何通过本地testing)。

我的.htaccess文件将默认具有以下内容:

order allow,deny allow from all 

IP将被dynamic追加:

 Order Deny,Allow Allow from all Deny from 192.168.30.1 

我理解这一点的方式是,默认情况下允许所有的拒绝规则的可选列表。 如果我没有把错误Order Deny,Allow先看看拒绝列表,这是正确的吗?

而且从所有规则的允许需要在最后?

编辑1

如果我没有弄错,我需要根据jeffatrackaid的回答做到这一点:

 Order Allow,Deny Allow from all Deny from 192.168.30.1 

编辑2

为了完整起见,这可能更适合我的要求:

 Order Deny,Allow Deny from 192.168.30.1 

这个规则允许每个人进入你的网站。

 Order Deny,Allow Allow from all Deny from 192.168.30.1 

Order指令确定您的规则处理的顺序。 用Order deny,allow拒绝列表将被首先处理然后允许列表。

使用Apache,所有的规则都被处理,最后一个匹配成为有效的规则。

所以在这种情况下,你最后的规则将被allow from all

这意味着192.168.30.1最初将被拒绝,但随后允许,因为最后处理了允许规则。

这将产生相同的结果

 Order Deny,Allow Allow from all Deny from 192.168.30.1 Allow from 192.168.30.1 

想想这样。

  • 允许/拒绝规则只是单独的IP列表,被允许/拒绝。
  • order指令确定这些列表的处理顺序。
  • Apache评估所有规则,并对最后一个匹配规则的结果进行处理。

主要的困惑是,这与防火墙的工作方式有很大的不同,在这种情况下,规则顺序和首次匹配通常决定了访问权限。

请参阅: http : //httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order