zen-cart网站,模版,采集,二次开发

首页 » Linux » liunx基础 » 阅读文章

Apache的Order Allow Deny使用方法总结

2012-03-21 10:47 23922 0 发表评论
标签:


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

总则

1. order语句中allow、deny的先后顺序,如“order allow,deny”代表先判断allow语句再判断deny语句

2. allow、deny语句中各自包含的范围。

要点

1. 修改完配置后要保存好并重启Apache服务,配置才能生效;

2. 开头字母不分大小写;

3. allow、deny语句不分先后顺序,谁先谁后不影响最终判断结果;但都会被判断到;

4. order语句中,“allow,deny”之间“有且只有”一个逗号(英文格式的),而且先后顺序很重要;

5. Apache有一条缺省规则,“order allow,deny”本身就默认了拒绝所有的意思,因为deny在allow的后面;同理,“order deny,allow”本身默认的是允许所有;当然,最终判断结果还要综合下面的allow、deny语句中各自所包含的范围;(也就是说order语句后面可以没有allow、deny语句)

6. allow、deny语句中,第二个单词一定是“from”,否则Apache会因错而无法启动,

判断原则

1. 首先判断默认的;

2. 然后判断逗号前的;

3. 最后判断逗号后的;

4. 最终按顺序叠加而得出判断结果。

示例

1、

order deny,allow
allow from 218.20.253.2
deny from 218.20

1. 所谓“首先判断默认的”,就是判断“order deny,allow”这句,它默认是允许所有;

2. 所谓“然后判断逗号前的”,因为在本例子中的order语句里面,deny在逗号的前面,所以现在轮到判断下面的deny语句了——“deny from 218.20”;

3. 所谓“最后判断逗号后的”,因为在本例子中的order语句里面,allow在逗号的后面,所以最后轮到判断下面的allow语句了——“allow from 218.20.253.2”。

4. 所谓“最终按顺序叠加而得出判断结果”,取允许 和禁止的交集,即最终结果,禁止218.20段访问,但允许218.20.253.2访问,也允许其他段访问

可以借助ps图层理解,其中白色部分标示允许访问,黑色部分标示禁止访问

图层1,order deny,allow

图层2,deny from 218.20

图层3,allow from 218.20.253.2

2、

Order deny,allow
allow from all
deny from 219.204.253.8

#全部都可以通行

3、

Order deny,allow
allow from 219.204.253.8
deny from all

#只允许219.204.253.8通行

转载:http://hi.baidu.com/enjoypain/blog/item/f48c7aecdba298d12f2e21ac.html

相关日志:

评论 共0条 (RSS 2.0) 发表评论

  1. 暂无评论,快抢沙发吧。

发表评论

  • 
  • 插入代码

联系我 Contact Me

回到页首