`

apache配置Directory目录权限的一些配置

阅读更多

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等,如表7-1所示。

表7-1           目录特性选项

 

         
Indexes 允许目录浏览

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

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

由于Allow语句覆盖了Deny语句,因此这3条语句是允许所有客户的访问

原文:http://mychange.name/archives/156
分享到:
评论

相关推荐

    关于apache的Directory目录权限的说明参考.pdf

    Apache服务器是世界上最流行的Web...理解Apache的Directory权限设置对于管理和保护Web服务器上的资源至关重要。正确配置这些指令可以帮助防止未经授权的访问,保护敏感信息,并确保只有预期的用户可以访问特定目录。

    apache 目录权限设置方法

    本文将详细介绍如何在Apache中设置目录权限,包括基本概念、常用指令以及具体的配置示例。 #### 二、Apache目录权限的基本概念 1. **httpd.conf**: 这是Apache的主要配置文件,其中包含了服务器的各种全局设置。 2....

    在Apache中设置目录权限

    Apache配置文件中,我们通常使用`&lt;Directory&gt;`指令来指定特定目录的访问规则。例如,`&lt;Directory "/www/www.test.com"&gt;`定义了一个名为`/www/www.test.com`的目录,并在其内部设置了一系列权限控制。 1. `Options`...

    apache配置虚拟目录

    ### Apache配置虚拟目录详解 #### 一、Apache配置文件概览 Apache服务器的配置主要通过一系列的配置文件来实现。不同操作系统中Apache的配置文件结构可能会有所不同。在Ubuntu Linux系统中,Apache 2的配置文件结构...

    apache配置端口目录

    2. **配置目录**:Apache通过`&lt;Directory&gt;`指令来管理目录访问权限。比如,你可以设定某个目录只允许读取,不允许写入或执行。下面是一个示例: ``` &lt;Directory "/var/www/html"&gt; Options Indexes ...

    apache配置directory[文].pdf

    Apache配置中的`&lt;Directory&gt;`指令是用于设置特定目录及其子目录的访问规则和配置的。这个指令允许你封装一组指令,只让它们对指定的文件系统路径下的目录生效。在Apache配置文件中,`&lt;Directory&gt;`指令通常用于定义...

    Web应用安全:Apache禁止目录列出配置实验.doc

    3. **查找Directory指令**:在文件中搜索`Directory`,这将帮助我们找到与目录权限相关的配置段。 4. **禁用目录列出**:找到类似`Options Indexes FollowSymLinks`的行,其中`Indexes`表示允许目录索引(即列出目录...

    apache 虚拟目录配置文件

    ### Apache虚拟目录配置详解 #### 一、Apache虚拟目录简介 Apache是一款广泛使用的Web服务器软件,支持多种操作系统,包括Windows、Linux等。通过Apache可以轻松地实现网站的部署与管理。其中,虚拟目录是Apache...

    Apache配置详解(最好的APACHE配置教程)

    Apache的`&lt;Directory&gt;`指令用于设置特定目录的访问规则。你可以控制是否允许索引、是否启用FollowSymLinks、以及定义访问权限等。`.htaccess`文件也可以包含`&lt;Directory&gt;`指令,但其作用范围仅限于该目录及其子目录...

    apache配置

    Apache 配置文件中可以设置权限控制,以限制访问者对目录和文件的访问权限。例如,使用 `&lt;Directory&gt;` 指令可以设置指定目录的权限,使用 `Options` 指令可以设置目录的权限,例如 `Indexes` 和 `FollowSymLinks`。...

    Apache的Directory的配置方法.docx

    Directory指令允许你在Apache配置文件(如httpd.conf)中定义特定目录的访问规则。它的语法通常是`&lt;Directory "path"&gt;`,其中"path"是你要控制的目录的路径。例如,`&lt;Directory "/var/www/html"&gt;`将针对"/var/...

    Linux apache环境多域名配置

    4. **权限问题**:确保Apache用户(通常是`www-data`或`apache`)有足够的权限访问项目目录。 5. **测试**:配置完成后,务必进行充分的测试,确保所有域名都能正常访问。 #### 五、总结 通过上述步骤,我们可以在...

    apache 安装后配置

    1. **权限和安全**:确保正确配置文件和目录权限,避免因权限问题导致服务无法启动或数据泄露。 2. **错误日志和访问日志**:通过`ErrorLog`和`CustomLog`指令设置日志文件,便于排查问题。 3. **SSL/TLS支持**:...

    apache虚拟目录和虚拟主机设置详解

    ### Apache虚拟目录和虚拟主机设置详解 #### 一、虚拟目录(Alias) 在Apache服务器配置中,虚拟目录(也称为别名)是一种重要的技术,它允许我们定义一个URL路径,并将其映射到服务器上的实际物理目录。这不仅提高...

    APACHE与PHP配置方法

    - `&lt;Directory&gt;` 部分:确保允许所有访问,以防止权限错误,如 `allow from all`。 5. **重启 Apache**: 修改 `httpd.conf` 后,需重启 Apache 以应用更改。 6. **处理与其他服务器冲突**:如果系统中同时运行 IIS...

    apache配置文件详解

    - **作用**: 可以为特定目录设置访问权限、脚本解释器等配置。 **2.3 监控反馈类参数** - **2.3.1 PidFile** - **说明**: PidFile指令用于指定一个文件名,Apache启动后会在该文件中记录进程ID(PID)。 - **...

    Apache24和PHP7.2配置教程

    - `&lt;Directory "D:/WebServer/Apache24/htdocs"&gt;`: 控制对文档根目录及其子目录的访问权限。 - `LoadModule php7_module "D:/WebServer/php-7.2.3-Win32-VC15-x64/php7apache2_4.dll"`: 加载PHP模块,使得Apache...

    Apache Directory Studio

    它提供了全面的功能,包括浏览、编辑、配置 LDAP 目录服务器,以及构建和调试 LDAP 查询。这款工具对于系统管理员、开发者以及任何需要处理 LDAP 数据的人来说都是非常有价值的。 1. LDAP 简介: LDAP 是一种轻量...

    Apache配置中文版

    Apache是世界上最流行的Web服务器软件...以上是对Apache配置的一些基本介绍,实际操作中可能需要结合具体需求进行更复杂的配置。通过理解这些知识点,你可以更好地管理和优化Apache服务器,确保网站的稳定性和安全性。

Global site tag (gtag.js) - Google Analytics