**Apache Options指令详解
http://www.365mini.com/page/apache-options-directive.htm
Options指令是Apache配置文件中一个比较常见也比较重要的指令,Options指令可以在Apache服务器核心配置(server config)、虚拟主机配置(virtual host)、特定目录配置(directory)以及.htaccess文件中使用。Options指令的主要作用是控制特定目录将启用哪些服务器特性。
Options指令常见的配置示例代码如下:
- <Directory />
- #指定根目录"/"启用Indexes、FollowSymLinks两种特性。
- Options Indexes FollowSymLinks
- AllowOverride all
- Order allow,deny
- Allow from all
- </Directory>
Options指令的完整语法为:Options [+|-]option [[+|-]option] ...。简而言之,Options指令后可以附加指定多种服务器特性,特性选项之间以空格分隔。下面我们来看看Options指令后可以附加的特性选项的具体作用及含义(Apache配置中的内容均不区分大小写):
- All
- 表示除
MultiViews之外的所有特性。这也是Options指令的默认设置。 - None
- 表示不启用任何的服务器特性。
- FollowSymLinks
- 服务器允许在此目录中使用符号连接。如果该配置选项位于
<Location>配置段中,将会被忽略。 - Indexes
- 如果输入的网址对应服务器上的一个文件目录,而此目录中又没有
DirectoryIndex指令(例如:DirectoryIndex index.html index.php),那么服务器会返回由mod_autoindex模块生成的一个格式化后的目录列表,并列出该目录下的所有文件(如下图)。
- MultiViews
- 允许使用
mod_negotiation模块提供内容协商的"多重视图"。简而言之,如果客户端请求的路径可能对应多种类型的文件,那么服务器将根据客户端请求的具体情况自动选择一个最匹配客户端要求的文件。例如,在服务器站点的file文件夹下中存在名为hello.jpg和hello.html的两个文件,此时用户输入Http://localhost/file/hello,如果在file文件夹下并没有hello子目录,那么服务器将会尝试在file文件夹下查找形如hello.*的文件,然后根据用户请求的具体情况返回最匹配要求的hello.jpg或者hello.html。 - SymLinksIfOwnerMatch
- 服务器仅在符号连接与目标文件或目录的所有者具有相同的用户ID时才使用它。简而言之,只有当符号连接和符号连接指向的目标文件或目录的所有者是同一用户时,才会使用符号连接。如果该配置选项位于
<Location>配置段中,将会被忽略。 - ExecCGI
- 允许使用
mod_cgi模块执行CGI脚本。 - Includes
- 允许使用
mod_include模块提供的服务器端包含功能。 - IncludesNOEXEC
- 允许服务器端包含,但禁用"#exec cmd"和"#exec cgi"。但仍可以从
ScriptAlias目录使用"#include virtual"虚拟CGI脚本。
此外,比较细心的读者应该注意到,Options指令语法允许在配置选项前加上符号"+"或者"-",那么这到底是什么意思呢。
实际上,Apache允许在一个目录配置中设置多个Options指令。不过,一般来说,如果一个目录被多次设置了Options,则指定特性数量最多的一个Options指令会被完全接受(其它的被忽略),而各个Options指令之间并不会合并。但是如果我们在可选配置项前加上了符号"+"或"-",那么表示该可选项将会被合并。所有前面加有"+"号的可选项将强制覆盖当前的可选项设置,而所有前面有"-"号的可选项将强制从当前可选项设置中去除。你可以参考下面的例子:
- #示例1
- <Directory /web/file>
- Options Indexes FollowSymLinks
- </Directory>
- <Directory /web/file/image>
- Options Includes
- </Directory>
- #目录/web/file/image只会被设置Includes特性
- #示例2
- <Directory /web/file>
- Options Indexes FollowSymLinks
- </Directory>
- <Directory /web/file/image>
- Options +Includes -Indexes
- </Directory>
- #目录/web/file/image将会被设置Includes、FollowSymLinks两种特性
备注1:混合使用前面带"+"/"-"和前面不带"+"/"-"的同一可选项,可能会导致出现意料之外的结果。
备注2:使用-IncludesNOEXEC或-Includes时,不论前面如何设置,都会完全禁用服务器端包含。
**Apache Options指令详解的更多相关文章
- rsync指令详解
rsync指令详解(更详细的看官方文档http://rsync.samba.org/ftp/rsync/rsync.html) [root@Centos epel]# rsync --help rsy ...
- (转)nginx日志配置指令详解
这篇文章主要介绍了nginx日志配置指令详解,nginx有一个非常灵活的日志记录模式,每个级别的配置可以有各自独立的访问日志,需要的朋友可以参考下日志对于统计排错来说非常有利的.本文总结了nginx日 ...
- nginx日志配置指令详解
这篇文章主要介绍了nginx日志配置指令详解,nginx有一个非常灵活的日志记录模式,每个级别的配置可以有各自独立的访问日志,需要的朋友可以参考下日志对于统计排错来说非常有利的.本文总结了nginx日 ...
- set指令详解
set指令详解 功能说明:设置shell 语 法:set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...] 说 明:设置或取消设置shell选项 ...
- org.apache.log4j.Logger详解
org.apache.log4j.Logger 详解 1. 概述 1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的 :监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工 ...
- [转]JVM指令详解(上)
作者:禅楼望月(http://www.cnblogs.com/yaoyinglong) 本文主要记录一些JVM指令,便于记忆与查阅. 一.未归类系列A 此系列暂未归类. 指令码 助记符 ...
- Apache POI使用详解
Apache POI使用详解 1.POI结构与常用类 (1)POI介绍 Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案 ...
- C#中的预处理器指令详解
这篇文章主要介绍了C#中的预处理器指令详解,本文讲解了#define 和 #undef.#if.#elif.#else和#endif.#warning和#error.#region和#endregio ...
- org.apache.common.io-FileUtils详解
org.apache.common.io---FileUtils详解 getTempDirectoryPath():返回临时目录路径; public static String getTempDire ...
随机推荐
- VPN错误800、错误789
VPN突然无法连接解决方法: 1. 单击“开始”,单击“运行”,键入“regedit”,然后单击“确定” 2. 找到下面的注册表子项,然后单击它:HKEY_LOCAL_MACHINE\System\C ...
- bat文件编写(无线承载网络设置)
就弄个例子,自己看执行效果,然后模仿写就行. 1)获取当前时间: @echo off set YEAR=%date:~0,4% set MONTH=%date:~5,2% set DAY=%date: ...
- ios 中怎么自定义(RGB)背景色
1.定义RGB 色彩.随机颜色 我的抽为宏定义.便于各个文件中使用 // 1.获得RGB颜色 #define MTColor(r, g, b) [UIColor colorWithRed:(r)/25 ...
- MVC4.0 利用HandleErrorAttribute和log4net实现记录异常日志功能
1.MVC4.0中HandleErrorAttribte已经帮我们处理了异常问题,当我们新建一个非空的MVC项目时候,在FilterConfig中会发现这样的代码 public class Filte ...
- EasyUI 在aspx页面显示高度不正常解决办法
<body class="easyui-layout"> <form id="form1" runat="server"& ...
- 教你怎么把安卓应用软件放到系统根目录system/app下
安卓手机有时候安装的软件多了,用着久了就会出现卡机,死机的现象,流畅度大大的减弱了,实在是影响使用体验.对于这种情况,有的人会经常清理后台程序,可是次数多了,提速的效果也不太明显.那么,到底怎么做才能 ...
- Spring 静态资源配置
ShineJaie 原创整理,转载请注明出处. 一.为何要配置静态资源 1.在配置 Spring 的时候,我们配置的拦截是"/",即任何文件都会经 Spring 拦截处理. 2.实 ...
- 文件读写器FileRW 1.0发布
这个软件未发布前,当年被计算机杂志报道过. FileRW 文件读写器 1.0功能介绍:1.可以以各种方式读普通文件和I/O文件.2.可以以各种方式写文件.3.可以配置文件的分享读写方式.4.可以指定文 ...
- shell 进程查询相关的命令
同一个进程部署多个,如何知道删除哪个: ll /proc/ 会显示位置 查看pid下哪些socket链接 ll /proc//fd
- git manual
git init # 初始化本地git仓库(创建新仓库) git config --global us ...