apache:Order allow、deny 判断(黑白描点法)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/MASORL/article/details/80880659

Allow和Deny可以用于apache的conf文件或者.htaccess文件中(配合Directory, Location, Files等),用来控制目录和文件的访问授权。

order主要由三句话组成

第一句:Order Deny,Allow或Order Allow,Deny

第二句:Deny from xxx 或 Allow from xxx

第三局:Allow from xxx 或 Deny from xxx

描点法,将Allow 想象成白点,Deny想象成黑点

第一步:解析第一句

    1)想象有一张纸(Order的每一句话都是一个图层)

    2)先看第一句:如果是Order Deny,Allow: 默认,相当于允许所有访问通过。(将纸描成全白);如果是Order Allow,Deny: 默认,相当于拒绝所有访问通过。(将纸描成全黑);

    3)根据第一句结尾再看第二句:如果第一句结尾是Allow,则先Deny from xxx,在纸上描上黑点。如果第一句结尾是Deny,则先看Allow form xxx,在纸上描白点。

    4)再看第三句:如果是Allow from xxx, 先看xxx范围,与上一句的关系大致分为:不相关,包含,被包含。根据关系描白点。Dent from xxx 同上。

    5)再看纸的黑白分布,得出结果。

例:

order deny,allow(第一句: allow结尾结尾,描白)

allow from 218.20.253.2(第三句,判断范围,deny包含allow,所以allow白点描在第二局黑点里面)

deny from 218.20(因为第一句allow结尾,所以第二句是这句。描上一个拒绝218.20开头ip访问的黑点)

画为后的图为:


很容易就可以判断,拒绝IP218.20开头的IP(黑色部分)但允许其他包括218.20.253.2的IP访问


参考:https://www.cnblogs.com/top5/archive/2009/09/22/1571709.html

猜你喜欢

转载自blog.csdn.net/MASORL/article/details/80880659
今日推荐