收起左侧

[PHP] Apache2.4虚拟配置访问控制详解

0
回复
[复制链接]
avatar
  • TA的每日心情
    qdsmile奋斗
    11 小时前
  • 签到天数: 2663 天

    [LV.Master]伴吧终老

    460

    主题

    1056

    帖子

    3万

    积分
    发表于 2017-5-21 15:41:53 | 显示全部楼层 |阅读模式
    Apache2.4虚拟配置访问控制详解

    一、访问控制

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

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

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

    实例1:所有请求都被拒绝
    Apache2.2 配置:
    1. Order deny,allow #排序,先拒绝后允许
    2. Deny from all #拒绝所有
    复制代码
    Apache2.4 配置:
    1. Require all denied #拒绝所有
    复制代码


    实例2:所有请求都被允许
    Apache2.2 配置:
    1. Order allow,deny #排序,先允许后拒绝
    2. Allow from all #允许所有
    复制代码
    Apache2.4 配置:
    1. Require all granted #拒绝所有
    复制代码


    实例3:example.org所有请求都被允许,其他拒绝
    Apache2.2 配置:
    1. Order Deny,Allow #排序,先拒绝后允许
    2. Deny from all #拒绝所有
    3. Allow from example.org #允许example.org
    复制代码
    Apache2.4 配置:
    1. Require host example.org #拒绝所有
    复制代码

    二、Apache Require 指令


    附:常见访问控制指令
    1. Require all granted #允许所有

    2. Require all denied #拒绝所有

    3. Require env env-var [env-var] ... #允许,匹配环境变量中任意一个

    4. Require method http-method [http-method] ... #允许,特定的HTTP方法

    5. Require expr expression #允许,表达式为true

    6. Require user userid [ userid ] ... #允许,特定用户

    7. Require group group-name [group-name] ... #允许,特定用户组

    8. Require valid-user # #允许,有效用户

    9. Require ip 10 172.20 192.168.2 #允许 特定IP
    复制代码
    学习心情好,签到少不了。
    您需要登录后才可以回帖 登录 | 立即注册 QQ登录

    本版积分规则