关于Apacheserver的訪问控制
Apache的訪问控制指对不论什么资源的不论什么方式的訪问控制。
一、基于主机或者IP地址的控制
这样的訪问控制基于訪问者的主机名或者IP地址,通过使用 Deny 和 Allow 指令。实现同意或者禁止某个主机訪问我们的server资源。通常 Order 指令也会一起使用。来定义 Deny 和 Allows 指令起作用的顺序。假设不使用 Order 指令,默认的顺序为 Deny, Allow, 就相当于 Order Deny,Allow。
Order 指令和 Allow,Deny 指令配合使用,实现了一个三步控制系统。
第一步:依据Order的顺序,将顺序在前的全部的Allow指令或者Deny指令应用于当前请求;也就是说假设是 Order allow,deny 。那么第一步就是将全部的Allow指令应用于当前訪问,假设有匹配,那么就同意该訪问。假设沒有匹配到一条Allow指令。那么就禁止其訪问;
第二步:将剩下的另外一个指令的全部语句跟当前请求匹配,假设有匹配就运行对应的訪问控制。
第三步:假设当前请求没有在前两步匹配到不论什么指令,就运行 Order 指令中后面的那个指令。
以下。通过一个样例理解一下:
使指定文件夹下的资源仅仅让本地訪问
<Directory "/server">
Order allow,deny
Allow from 127.0.0.1
</Directory>
第一步: 本地的訪问匹配了 Allow from 127.0.0.1 这条指令。所以被同意。其它的主机没有匹配到不论什么一条Allow指令,所以被禁止訪问;
第二步:全部訪问都没有匹配到 Deny 指令。
第三步:没有匹配到不论什么指令的訪问,也就是不是本地的訪问,依照 Order 指令,运行后面的 deny 的指令,所以被禁止訪问;
二、依据环境变量的訪问控制
这样的方式能够通过 Allow from env= 或者 Deny from env= 语法实现,比方仅仅同意使用火狐浏览器的客户訪问:
<Directory "/server">
SetEnvIf User-Agent "Firefox" ff=1
Order allow,deny
Allow from env=ff
</Directory>
三、使用 mod_rewrite 实现訪问控制
通过 mod_rewrite 指令的 [F] 标志,能够实现
关于Apacheserver的訪问控制的更多相关文章
- C++类訪问控制及继承
一.C++类的訪问控制有三类:public,protected和private. 类訪问控制符 类成员可被哪些对象訪问 public 1.类的成员函数.2.类对象.3.友元.4.子类成员函数 prot ...
- JAVA基础之訪问控制权限(封装)
包:库单元 1.当编写一个Java源码文件时.此文件通常被称为编译单元(有时也被称为转译单元). 2.每一个编译单元都必须有一个后缀名.java,而在编译单元内则能够有一个public类,该类名称必须 ...
- Phalcon 訪问控制列表 ACL(Access Control Lists ACL)
Phalcon在权限方面通过 Phalcon\Acl 提供了一个轻量级的 ACL(訪问控制列表). Access Control Lists (ACL) 同意系统对用户的訪问权限进行控制,比方同意訪问 ...
- 訪问控制 protected, public, private 对照
OOP 3大特性:数据抽象,继承,动态绑定 3中訪问标号 protected, public, private 对照 用类进行数据抽象:用继承类继承基类的成员,实现继承.通过将基类对应函数声明为vir ...
- php訪问控制
訪问控制通过keywordpublic,protected和private来实现. 被定义为公有的类成员能够在不论什么地方被訪问.被定义为受保护的类成员则能够被其自身以及其子类和父类訪问.被定义为私有 ...
- ORA-24247: 网络訪问被訪问控制列表 (ACL) 拒绝
ORA-24247: 网络訪问被訪问控制列表 (ACL) 拒绝 注意:须要在system用户下使用命令 须要先使用 DBMS_NETWORK_ACL_ADMIN.CREATE_ACL 创建訪问控 ...
- [Nginx]用Nginx实现与应用结合的訪问控制 - 防盗链
应用场景:图片等资源须要设置权限,如:仅仅有认证过的用户才干訪问自己的图片. 解决的方法:使用Nginx的防盗链模块http_secure_link能够实现,该模块默认情况下不包括.故在安装时要加上- ...
- C++ 訪问控制权限图解
基类訪问权限 类继承方式 子类訪问权限 public public protected public protected private No Access p ...
- CCNP路由实验之十四 路由器的訪问控制ACL
年9月1月12:00.还有一种时间叫做周期时间(periodic),即这个时间是会多次反复的.比方每周一,或者每周一到周五 ,"rotary 2″开启3002以此类推. 变成1,1变成 ...
随机推荐
- Oracle EBS-SQL (INV-1):检查物料成本为0并且物料状态不是'NEW'的物料.sql
select --msi.inventory_item_id --,msi.organization_id msi.segment1 ...
- 利用 Windows Azure 实现“云优先”
根据 IDC 的调查,云计算无疑为我们的合作伙伴提供了巨大的机会,预计到 2016 年,全球企业将在公共云服务上耗资 980 亿美元.在今天的休斯敦全球合作伙伴大会上,我们非常高兴能与合作伙伴共同寻求 ...
- 基于本地iso 搭建的本地yum源 安装部署openldap
1,yum openldap-servers,openldap-clients 基于iso-cd1搭建的本地yum源(具体搭建参看ruige的repo本地快速搭建,在右边 找找看中输入repo key ...
- PHP自定义函数与字符串处理
自定义函数: 1.默认值的函数: function Main($a=5,$b=6) { echo $a*$b; } 2.可变参数的函数: function ...
- andengine游戏引擎总结进阶篇1
本篇包括虚拟键盘,粒子系统 1虚拟键盘 分为两种,一种是单个虚拟键盘,另一种是多个方位虚拟键盘 1)加载虚拟键盘所需要的图片资源 private BitmapTextureAtlas mOnScree ...
- 采用OSChina代码托管管理项目(一)
.Git是什么 Git在Wikipedia上的定义:它是一个免费的.分布式的版本号控制工具,或是一个强调了速度快的源码管理工具. Git最初被Linus Torvalds开发出来用于管理Linux内核 ...
- protobuf使用错误总结
1>HelloWorldScene.obj : error LNK2019: 无法解析的外部符号 "public: virtual __thiscall LoginReqMessage ...
- jquery设置文本框值 与获取文本框的值
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- JavaScript 中的面向对象的初步认识
我在学习JS的面向对象编程的时候,总是有两个奇怪的问题. 第一个就是:面向对象在JS中很少用到... 可能是目前自己做的项目还是比较简单,前端方面的任务我几乎都是用面向过程的方式写的,所以就导致,我啃 ...
- CRM odata方法 js容易出现的错误,大小写区分 Value Id
Id Value 注意大小写,I大写,V大写,typeResults.result[0].yt_category.Value; 否则会报 错,Result.yt_businessunit_terri ...