选项+/-与全部相互作用,这在2.2中是默认的,但在2.4中不是默认的

我有一系列从2.0 / 2.2升级到2.4的服务器。 以前的pipe理员做了各种选项的散列。 我很困惑,因为2.0 / 2.2文档说选项全部(这是“除MultiViews外的所有”)是默认的,而在2.4中默认已经改变为FollowSymLinks。 我也困惑父目录的选项与子目录的选项有什么关系 – 什么是inheritance? 这是我的问题小孩…

<Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> <Directory "/opt/apache/netegrity/webagent/pw/"> Options -Indexes MultiViews ExecCGI AllowOverride None Order allow,deny Allow from all </Directory> 

好的,这是2.2,在那里的文档肯定骂你在同一行+/- +/-非+/-选项,但启动您的服务器。 那么在这个代码中为/ opt / apache / netegrity / webagent / pw /设置了哪些选项? pw目录是否inheritance了FollowSymLinks并设置了MultiViews和ExecCGI,并且-Indexes是无稽之谈,因为Indexes不是反正呢? 如果第二个选项指令是唯一的

  Options MultiViews ExecCGI 

将索引打开或不是/ opt / apache / netegrity / webagent / pw /? 那么FollowSymLinks呢? 我知道这是怎么演变的 – 第二个选项指令是由webagent安装程序创build的

  Options Indexes MultiViews ExecCGI 

但是pipe理员想把索引带走,所以他们在前面贴了一个减号。 我认为(如果我正确地阅读文档),你关掉索引的方式就是把它排除在外,而不是贴上减号。

所以我们来谈谈金钱问题,这是从2.2到2.4的语法。 由于选项默认是FollowSymLinks而不是All,所以我们可以省略它

 <Directory /> AllowOverride none Require all denied </Directory> 

对? CA的人build议为/ opt / apache / CA / webagent / pw /

 <Directory "/opt/apache/CA/webagent/pw/"> Options Indexes MultiViews ExecCGI AllowOverride None Require all granted </Directory> 

所以,如果我们想要删除索引,那么我们是否完全放弃它,没有废弃选项?

 <Directory "/opt/apache/CA/webagent/pw/"> Options MultiViews ExecCGI AllowOverride None Require all granted </Directory> 

而且,最后一个问题,是为/ opt / apache / CA / webagent / pw /隐式设置的FollowSymLinks,因为它被设置为? 还是只有在选项行上显示/ opt / apache / CA / webagent / pw /?

apache2ctl有一个configtest参数来检查你的configuration。

当我不确定时,我喜欢使用这个:

 # apache2ctl configtest Syntax OK