Apache中的allow,deny 403

Order指令控制 缺省的访问状态和Allow与Deny指令被评估的顺序,如果没有权限,Apache会报HTTP 403禁止访问错误。

Ordering是以下几种范例之一:
Deny,Allow
Deny指令在 Allow指令之前被评估。 缺省允许所有访问。 任何不匹配Deny指令或者匹配 Allow指令的客户都被允许访问服务器。
Allow,Deny
Allow指令在 Deny指令之前被评估。 缺省禁止所有访问。 任何不匹配Allow指令或者匹配 Deny指令的客户都将被禁止访问服务器。

在下面的例子中,apache.org域中所有主机都允许访问,而其他任何主机访问都被拒绝。
Order Deny,Allow
Deny from all
Allow from apache.org php程序员站

下面例子中,apache.org域中所有主机,除了foo.apache.org子域包含的主机被拒绝访问以外,都允许访问。 而所有不在apache.org域中的主机都不允许访问,因为缺省状态是拒绝对服务器的访问。
Order Allow,Deny
Allow from apache.org
Deny from foo.apache.org


总则——影响最终判断结果的只有两点:
  • 1.order语句中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会因错而无法启动,
  • 7.“order allow,deny”代表先判断allow语句再判断deny语句,反之亦然。


转自: Apache中的allow,deny ----- Apache 403错误

你可能感兴趣的:(apache)