zoukankan      html  css  js  c++  java
  • apache配置Directory目录权限的一些配置

    可以使用<Directory 目录路径>和</Directory>这对语句为主目录或虚拟目录设置权限,它们是一对容器语句,必须成对出现,它们之间封装的是具体 的设置目录权限语句,这些语句仅对被设置目录及其子目录起作用。下面是主配置文件中设置目录权限的例子。

    <Directory "/var/www/icons">
      Options Indexes MultiViews
      AllowOverride None
      Order allow,deny
      Allow from all
    </Directory>

     (1)定义目录使用哪些特性

    Options Indexes MultiViews

    Options选项用于定义目录使用哪些特性,包括Indexes、MultiViews和ExecCGI等,如表所示

     Indexes                      允许目录浏览

    当客户仅指定要访问的目录,但没有指定要访问目录下的哪个文件,而且目录下不存在默认文档时,Apache以超文本形式返回目录中的文件和子目录列表(虚拟目录不会出现在目录列表中)

     MultiViews    允许内容协商的多重视图

    MultiViews其实是Apache的一个智能特性。当客户访问目录 中一个不存在的对象时,如访问“http://192.168.16.177/icons/a”,则Apache会查找这个目录下所有a.*文件。由于 icons目录下存在a.gif文件,因此Apache会将a.gif文件返回给客户,而不是返回出错信息

     All  All包含了除MultiViews之外的所有特性,如果没有Options语句,默认为All
     ExecCGI  允许在该目录下执行CGI脚本
     FollowSymLinks  可以在该目录中使用符号连接
     Includes  允许服务器端包含功能
     IncludesNoExec  允许服务器端包含功能,但禁用执行CGI脚本

    让主目录允许目录浏览

    细心的用户可能会发现虽然在主目录设置了Indexes权限,且主目录中并不存在默认文档,但访问时并不会出现目录列表,而只出现Apache的测 试页面。解决这个问题的方法很简单,只要将位于/etc/httpd/conf.d/目录下的welcome.conf文件删除后重启Apache即可。

    允许目录浏览要小心

    一旦定义允许目录浏览,就会将Web站点的文件夹和文件名结构暴露给黑客。目录浏览还会允许黑客浏览文件并掌握服务器配置信息,所以指定该权限往往带来安全性上的隐患。除非有充足的理由要使用目录浏览,否则应该禁用它。

    (2)设置.htaccess文件中的指令类型

    AllowOverride None

    AllowOverride选项用于定义位于每个目录下.htaccess(访问控制)文件中的指令类型。基于安全和效率的原因,虽然可以通 过.htaccess来设置目录的访问权限,但应尽可能地避免使用.htaccess文件,所以一般将AllowOverride设置为”None”,即 禁止使用.htaccess文件,而将目录权限的设置放在主配置文件httpd.conf的<Directory> 和</Directory>语句之间。

    (3)设置缺省的访问权限与Allow和Deny语句的处理顺序

    Order allow, deny

    Order选项用于定义缺省的访问权限与Allow和Deny语句的处理顺序。Allow和Deny语句可以针对客户机的域名或IP地址进行设置,以决定哪些客户机能够访问服务器。Order语句通常设置为以下两种值之一。

    allow, deny:缺省禁止所有客户机的访问,且Allow语句在Deny语句之前被匹配。如果某条件既匹配Deny语句又匹配Allow语句,则Deny语句会起作用(因为Deny语句覆盖了Allow语句)。

    deny, allow:缺省允许所有客户机的访问,且Deny语句在Allow语句之前被匹配。如果某条件既匹配Deny语句又匹配Allow语句,则Allow语句会起作用(因为Allow语句覆盖了Deny语句)。
    下面举一些例子来说明Order、Allow和Deny语句的使用方法。

    【例1】允许所有客户机的访问。

    Order allow,deny
    Allow from all

    【例2】除了来自hacker.com域和IP地址为192.168.16.111的客户机外,允许所有客户机的访问。

    Order deny ,allow
    Deny from hacker.com
    Deny from 192.168.16.111

    【例3】仅允许来自网络192.168.16.0/24客户机的访问。

    Order allow,deny
    Allow from 192.168.16.0/24

    对比:

    Order deny ,allow
    Allow from 192.168.16.0/24

    【例4】仅允许来自网络192.168.16.0/24客户机的访问,但IP地址为192.168.16.111的客户机除外。

    Order allow,deny
    Allow from 192.168.16.0/24
    Deny from 192.168.16.111
    对比:
    Order deny ,allow
    Allow from 192.168.16.0/24
    Deny from 192.168.16.111
  • 相关阅读:
    hive与hbase整合
    待重写
    hive DML
    【知识强化】第六章 总线 6.1 总线概述
    【知识强化】第五章 中央处理器 5.1 CPU的功能和基本结构
    【知识强化】第四章 指令系统 4.3 CISC和RISC的基本概念
    【知识强化】第四章 指令系统 4.2 指令寻址方式
    【知识强化】第四章 指令系统 4.1 指令格式
    【知识强化】第三章 存储系统 3.6 高速缓冲存储器
    【知识强化】第三章 存储系统 3.5 双口RAM和多模块存储器
  • 原文地址:https://www.cnblogs.com/jxl1996/p/10122831.html
Copyright © 2011-2022 走看看