Apache2.4和Apache2.2访问控制配置语法对比

(编辑:jimmy 日期: 2024/12/26 浏览:2)

本文翻译自官方文档:《Upgrading to 2.4 from 2.2》

一、访问控制

在Apache2.2版本中,访问控制是基于客户端的主机名、IP地址以及客户端请求中的其他特征,使用Order(排序), Allow(允许), Deny(拒绝),Satisfy(满足)指令来实现。

在Apache2.4版本中,使用mod_authz_host这个新的模块,来实现访问控制,其他授权检查也以同样的方式来完成。旧的访问控制语句应当被新的授权认证机制所取代,即便Apache已经提供了mod_access_compat这一新模块来兼容旧语句。

这里有一些实例,用新方法取代旧语句实现相同的访问控制

实例1:所有请求都被拒绝

Apache2.2 配置:
复制代码 代码如下:
Order deny,allow #排序,先拒绝后允许
Deny from all #拒绝所有

Apache2.4 配置:

复制代码 代码如下:
Require all denied #拒绝所有

实例2:所有请求都被允许

Apache2.2 配置:

复制代码 代码如下:
Order allow,deny #排序,先允许后拒绝
Allow from all #允许所有

Apache2.4 配置:

复制代码 代码如下:
Require all granted #拒绝所有

实例3:example.org所有请求都被允许,其他拒绝

Apache2.2 配置:
复制代码 代码如下:
Order Deny,Allow #排序,先拒绝后允许
Deny from all #拒绝所有
Allow from example.org #允许example.org

Apache2.4 配置:
复制代码 代码如下:
Require host example.org #拒绝所有

二、Apache Require 指令

了解更多require指令用法:《Apache Module mod_authz_core》

附:常见访问控制指令
复制代码 代码如下:
Require all granted #允许所有
Require all denied #拒绝所有
Require env env-var [env-var] ... #允许,匹配环境变量中任意一个
Require method http-method [http-method] ... #允许,特定的HTTP方法
Require expr expression #允许,表达式为true
Require user userid [ userid ] ... #允许,特定用户
Require group group-name [group-name] ... #允许,特定用户组
Require valid-user # #允许,有效用户
Require ip 10 172.20 192.168.2 #允许 特定IP

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。