Apache 的 order deny allow 设置说明

Apache 的 order deny allow 设置说明

扫码添加渲大师小管家,免费领取渲染插件、素材、模型、教程合集大礼包!

所以。最常用的是:
Order Deny,Allow
Allow from All

注意“Deny,Allow”中间只有一个逗号。也只能有一个逗号。有空格都会出错;单词的大小写不限。

上面设定的含义是先设定“先检查禁止设定。没有禁止的全部允许”。而第二句没有Deny。也就是没有禁止访问的设定。直接就是允许所有访问了。这个主要是用来确保或者覆盖上级目录的设置。开放所有内容的访问权。

按照上面的解释。下面的设定是无条件禁止访问:
Order Allow,Deny
Deny from All

如果要禁止部分内容的访问。其他的全部开放:
Order Deny,Allow
Deny from ip1 ip2
或者
Order Allow,Deny
Allow from all
Deny from ip1 ip2

apache会按照order决定最后使用哪一条规则。比如上面的第二种方式。虽然第二句allow允许了访问。但由于在order中allow 不是最后规则。因此还需要看有没有deny规则。于是到了第三句。符合ip1和ip2的访问就被禁止了。注意。order决定的“最后”规则非常重要。下面是两个错误的例子和改正方式:

Order Deny,Allow
Allow from all
Deny from domain.org
错误:想禁止来自domain.org的访问。但是deny不是最后规则。apache在处理到第二句allow的时候就已经匹配成功。根本就不会去看第三句。
解决方法:Order Allow,Deny。后面两句不动。即可。

Order Allow,Deny
Allow from ip1
Deny from all
错误:想只允许来自ip1的访问。但是。虽然第二句中设定了allow规则。由于order中deny在后。所以会以第三句deny为准。而第三句的范围中又明显包含了ip1(all include ip1)。所以所有的访问都被禁止了。
解决方法一:直接去掉第三句。
解决方法二:
Order Deny,Allow
Deny from all
Allow from ip1

总结:Order Deny,Allow中。后一个是一定会被执行的(有相应的allow或deny语句时)。如果没有则按照语义分析。

分享到 :
相关推荐

美国服务器和韩国服务器的区别有哪些(美国服务器和韩国服务器的区别有哪些呢)

美国服务器和韩国服务器的区别有:1。速度上。美国服务器国内访问速度比韩国服务器慢;2...

香港服务器好用吗(香港服务器好用吗知乎)

众所周知。无论是香港服务器还是国内服务器还是其它服务器。它的系统都不太一样的。可以根...

美国服务器网站常见的网络攻击类型有哪些(美国服务器网站常见的网络攻击类型有哪些)

美国服务器网站常见的网络攻击类型有:1。CC攻击。消耗美国服务器资源直到宕机崩溃;2...

如何香港服务器不间断运行(如何香港服务器不间断运行软件)

香港服务器不间断运行的因素有:1.保障电源供应。不间断电源。定期检测备用发电机;2....

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注