Options指令
Options指令控制了在特定目录中将使用哪些服务器特性。
可选项能设置为None,在这种情况下,将不启用任何额外特性。或设置为以下选项中的一个或多个:
- All
- 除MultiViews之外的所有特性。这是默认设置。
- ExecCGI
- 允许执行CGI脚本.
- FollowSymLinks
- 服务器会在此目录中使用符号连接。
注意:即便服务器会使用符号连接,但它不会改变用于匹配<Directory>配置段的路径名。
注意:如果此配置位于<Location>配置段中,则此设置会被忽略。 - Includes
- 允许服务器端包含。
- IncludesNOEXEC
- 允许服务器端包含,但禁用#exec命令和#exec CGI。但仍可以从ScriptAliase目录使用#include 虚拟CGI脚本。
- Indexes
- 如果一个映射到目录的URL被请求,而此目录中又没有DirectoryIndex(例如:index.html),那么服务器会返回一个格式化后的目录列表。
- MultiViews
- 允许内容协商的多重视图。
- 服务器仅在符号连接与其目的目录或文件拥有者具有同样的用户id时才使用它。
注意:如果此配置出现在<Location>配置段中,此选项将被忽略。 - SymLinksIfOwnerMatch
一般来说,如果一个目录被多次设置了Options,则最特殊的一个会被完全接受,而各个可选项的设定彼此并不融合。然而,如果所有施用于Options指令的可选项前都加有+或-符号,此可选项将被合并。所有前面加有+号的可选项将强制覆盖当前可选项设置,而所有前面有-号的可选项将强制从当前可选项设置中去除。
比如说,没有任何+和-符号:
<Directory /web/docs>
Options Indexes FollowSymLinks
</Directory>
<Directory /web/docs/spec>
Options Includes
</Directory>
则只有Includes设置到/web/docs/spec目录上。然而如果第二个Options指令使用了+和-符号:
<Directory /web/docs>
Options Indexes FollowSymLinks
</Directory>
<Directory /web/docs/spec>
Options +Includes -Indexes
</Directory>
那么就会有FollowSymLinks和Includes设置到/web/docs/spec目录上。
请注意:使用-IncludesNOEXEC或是-Includes时,不论前面如何设置,都会完全禁用服务器端包含。
没有其它设置时,默认设置为All。