==================说在前面的话=================

1:这次实验使用的php项目是Discuz,Discuz的安装请参照:http://www.cnblogs.com/yichong/p/6038196.html

===================现在开干===================

在本次实验中我们使用如下标签:

<Directory “目录”>   ... </Directory>

<Filesmatch “文件”>  ... </Filesmatch>

<Location “URL”>    ... </Location>

第一:<Directory “目录”></Directory>标签讲解

说明:针对目录做权限限制

1:标签结构

以 <Directory “目录”> 开头,中间填充选项参数,以 </Directory> 结尾

2:标签位置

在 <VirtualHost *:> 和 </VirtualHost> 标签中间

3:标签指令参数详解

①:Options指令,Options指令后可以附加指定多种服务器特性,特性选项之间以空格分隔,特性表如下:

All                    表示除MultiViews之外的所有特性。这也是Options指令的默认设置
None 表示不启用任何的服务器特性。
FollowSymLinks 服务器允许在此目录中使用符号连接。如果该配置选项位于<Location>配置段中,将会被忽略。
Indexes

如果输入的网址对应服务器上的一个文件目录,而此目录中又没有DirectoryIndex指令

(例如:DirectoryIndex index.html index.php),那么服务器会返回由mod_autoindex

模块生成的一个格式化后的目录列表。

MultiViews

允许使用mod_negotiation模块提供内容协商的"多重视图"。简而言之,如果客户端请求的

路径可能对应多种类型的文件,那么服务器将根据客户端请求的具体情况自动选择一个最匹

配客户端要求的文件。例如,在服务器站点的file文件夹下中存在名为hello.jpghello.

html的两个文件,此时用户输入Http://localhost/file/hello,如果在file文件夹下并

没有hello子目录,那么服务器将会尝试在file文件夹下查找形如hello.*的文件,然后根

据用户请求的具体情况返回最匹配要求的hello.jpg或者hello.html

SymLinksIfOwnerMatch

SymLinksIfOwnerMatch服务器仅在符号连接与目标文件或目录的所有者具有相同的用户

ID时才使用它。简而言之,只有当符号连接和符号连接指向的目标文件或目录的所有者是同

一用户时,才会使用符号连接。如果该配置选项位于<Location>配置段中,将会被忽略。

ExecCGI 允许使用mod_cgi模块执行CGI脚本。
Includes 允许使用mod_include模块提供的服务器端包含功能。
IncludesNOEXEC

允许服务器端包含,但禁用"#exec cmd"和"#exec cgi"。但仍可以从ScriptAlias目录

使用"#include virtual"虚拟CGI脚本。

②:AllowOverride指令,该指令用于指定是否使用.htaccess文件,参数有如下表:

All 开启.htaccess文件
None 关闭.htaccess文件

③:Require指令,该指令用于指定允许、拒绝列表,在Apache2.2用的是下面这种

                       Order Deny,Allow
Deny All
Allow Form 10.3.33.3

而在Apache2.4用的是 Require all granted 和 Require all denied这种方式,具体如下表:

Require all granted 允许所有的访问
Require all denied 拒绝所有访问
Require ip 10.2.2.32 允许10.2.2.32这个地址访问
Require not ip 10.3.3.21 拒绝10.3.3.21这个地址访问
Reuquire host baidu.com 允许名为baidu.com的域访问
Reuquire not host baidu.com 拒绝名为baidu.com的域访问

如果是一条规则,可以直接使用,但是如果有多条规则,则必须把这些规则包含在如下元素当中:

<RequireAll>     </RequireAll> 在此元素中包含的规则,拒绝优先执行
<RequireAny>     </RequireAny> 在此元素中包含的规则,允许优先执行

举例1:允许所有访问,只拒绝192.168.1.103访问  

                <RequireAll>
Require all granted
Require not ip 192.168.1.103
</RequireAll>

举例2:拒绝所有访问,只允许192.168.1.103访问

                <RequireAny>
Require all denied
Require ip 192.168.1.103
</RequireAny>

第二:<FilesMatch “文件”> </FilesMatch>

     说明:针对文件做权限限制,和Apache2.2版本的 <Files "文件"> </Files>  作用一样,只不过新的这个支持正则表达式。

1:标签结构

以 <FilesMatch “文件”> 开头,中间填充选项参数,以 </FilesMatch> 结尾

2:标签位置

在 <VirtualHost *:80> 和 </VirtualHost> 标签中间

3:标签指令参数详解:

①:Require指令,该指令用于指定允许、拒绝列表,在Apache2.2用的是下面这种

                       Order Deny,Allow
Deny All
Allow Form 10.3.33.3

而在Apache2.4用的是 Require all granted 和 Require all denied这种方式,具体如下表:

Require all granted 允许所有的访问
Require all denied 拒绝所有访问
Require ip 10.2.2.32 允许10.2.2.32这个地址访问
Require not ip 10.3.3.21 拒绝10.3.3.21这个地址访问
Reuquire host baidu.com 允许名为baidu.com的域访问
Reuquire not host baidu.com 拒绝名为baidu.com的域访问

如果是一条规则,可以直接使用,但是如果有多条规则,则必须把这些规则包含在如下元素当中:

<RequireAll>     </RequireAll> 在此元素中包含的规则,拒绝优先执行
<RequireAny>     </RequireAny> 在此元素中包含的规则,允许优先执行

举例1:允许所有访问,只拒绝192.168.1.103访问  

                <RequireAll>
Require all granted
Require not ip 192.168.1.103
</RequireAll>

举例2:拒绝所有访问,只允许192.168.1.103访问

                <RequireAny>
Require all denied
Require ip 192.168.1.103
</RequireAny>

第三:<LocationMatch "URL"> </LocationMatch>

 说明:针对URL做权限限制,和Apache2.2版本的 <Location "URL"> </Location>  作用一样,只不过新的这个支持正则表达式。 

1:标签结构

以 <LocationMatch “文件”> 开头,中间填充选项参数,以 </LocationMatch> 结尾

2:标签位置

在 <VirtualHost *:80> 和 </VirtualHost> 标签中间

3:标签指令参数详解:

①:Require指令,该指令用于指定允许、拒绝列表,在Apache2.2用的是下面这种

                       Order Deny,Allow
Deny All
Allow Form 10.3.33.3

而在Apache2.4用的是 Require all granted 和 Require all denied这种方式,具体如下表:

Require all granted 允许所有的访问
Require all denied 拒绝所有访问
Require ip 10.2.2.32 允许10.2.2.32这个地址访问
Require not ip 10.3.3.21 拒绝10.3.3.21这个地址访问
Reuquire host baidu.com 允许名为baidu.com的域访问
Reuquire not host baidu.com 拒绝名为baidu.com的域访问

如果是一条规则,可以直接使用,但是如果有多条规则,则必须把这些规则包含在如下元素当中:

<RequireAll>     </RequireAll> 在此元素中包含的规则,拒绝优先执行
<RequireAny>     </RequireAny> 在此元素中包含的规则,允许优先执行

举例1:允许所有访问,只拒绝192.168.1.103访问  

                <RequireAll>
Require all granted
Require not ip 192.168.1.103
</RequireAll>

举例2:拒绝所有访问,只允许192.168.1.103访问

                <RequireAny>
Require all denied
Require ip 192.168.1.103
</RequireAny>

Apache2.4权限配置(原创帖-转载请注明出处)的更多相关文章

  1. Java程序员面试宝典1 ---Java基础部分(该博文为原创,转载请注明出处)

    (该博文为原创,转载请注明出处   http://www.cnblogs.com/luyijoy/  by白手伊凡) 1.    基本概念 1)         Java为解释性语言,运行过程:程序源 ...

  2. 后端Apache获取前端Nginx反向代理的真实IP地址 (原创贴-转载请注明出处)

    ====================说在前面的话==================== 环境:前段Nginx是反向代理服务器:后端是Apache是WEB项目服务器 目的:让后端Apapche获取 ...

  3. Apache开启状态查看页面(原创贴-转载请注明出处)

    =================写在前面的话================== 场景描述:有时候我们需要查看apache的运行状态,只需要开启apache的status功能就可以实现,但是stat ...

  4. Apache设置页面认证(原创贴-转载请注明出处)

    ================写在前面的话============== 1.本试验使用的apache版本是2.4.24 场景描述:网站后台管理页面比较重要,不应该任何人都让访问,所以对后台页面做认证 ...

  5. 转载请注明出处: https://github.com/qiu-deqing/FE-interview

    转载请注明出处: https://github.com/qiu-deqing/FE-interview Table of Contents generated with DocToc FE-inter ...

  6. 移动端H5页面遇到的问题总结(转载请注明出处)

    最近刚做完一个移动端的项目,产品之无敌,过程之艰辛,我就不多说了,记录下在这个项目中遇到的问题,以防万一,虽然这些可能都是已经被N多前辈解决掉了的问题,也放在这里,算是为自己漫漫前端路铺了一颗小石子儿 ...

  7. LAMP环境搭建 (原创帖,转载请注明出处)

    =============================说在前面的话==========================第一安装Mysql第二安装Apache-httpd第三安装PHP 第四配置PH ...

  8. Discuz的安装 (原创帖,转载请注明出处)

    ========================写在前面的话========================= 1.LAMP环境搭建请查看这篇日志:http://www.cnblogs.com/yic ...

  9. Mysql空用户导致数据库登陆故障处理 (原创帖,转载请注明出处)

    首先感谢在本次故障中阿铭对我的无私帮助,万分感谢!阿铭linux论坛:http://www.apelearn.com/study_v2/   问题描述: 公司安全部门扫描到数据库空密码漏洞,用户名密码 ...

随机推荐

  1. Cookie和Session的区别详解

    本文引用自:http://www.cnblogs.com/shiyangxt/archive/2008/10/07/1305506.html 二者的定义: 当你在浏览网站的时候,WEB 服务器会先送一 ...

  2. java连接mysql数据库详细步骤解析

    java连接mysql数据库详细步骤解析      第一步:下载一个JDBC驱动包,例如我用的是:mysql-connector-java-5.1.17-bin.jar      第二步:导入下载的J ...

  3. xmpp openfire smack 介绍和openfire安装及使用

    前言 Java领域的即时通信的解决方案可以考虑openfire+spark+smack.当然也有其他的选择. Openfire是基于Jabber协议(XMPP)实现的即时通信服务器端版本,目前建议使用 ...

  4. ROW_NUMBER() OVER() 用法

    语法 ROW_NUMBER ( ) OVER ( [ PARTITION BY value_expression , ... [ n ] ] order_by_clause ) 参数 PARTITIO ...

  5. iOS推送遇到的问题

    1. 推送证书过期. 同事说iOS客户端不能推送消息,发现推送证书过期了,苹果的推送证书有效期是一年,推送证书过期后就不能使用推送服务了.解决办法:重新请求推送证书,导出p12文件,传给后台服务器就可 ...

  6. keepalived mariadb 主主

    场景描述 #安装数据库mariadb 主主模式 keepalived 调度#mysql1 192.168.30.99#mysql2 192.168.30.100#vip 192.168.30.101 ...

  7. Android 基于Android的手机邮件收发(JavaMail)之三(邮件接收)

    初次做这个程序的时候,是仿照着网上别人的程序做的.因为本人比较菜,是一个新手,以前的基础知识没有学好,所以尽管有了别人的代码但是还是不知道怎么在界面上显示出它的效果来,废话不多少,现在就贴出我的参考程 ...

  8. 测试内容url

    nscurl --ats-diagnostics https://xxxx/xxxx/main/ curl "https://app.api.gupiaoxianji.com/v3.8/ma ...

  9. AFNETWorking 不支持中文URL请求

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #000000; min-height: 16.0px } p.p ...

  10. React常用的API说明

    楼主刚开始学习react,感受到了他的博大精深,看到很多莫名的用法,不知云云,找了很多没有找到参考手册,只有在中文社区和react官方看了一些,收集了一些比较常用的API,有补充的可以楼下评论补充.后 ...