Apache2 VirtualHost <Directory> 指令级联吗?

Do Apache2 VirtualHost <Directory> directives cascade?

我觉得这个问题以前肯定有人问过,但我找不到任何东西。

如果我有一个带有两个单独 <Directory> 指令的简单 VirtualHost:

<VirtualHost *:80>
    ...
    <Directory /var/www>
        Require all granted
        Options -Indexes
    </Directory>

    <Directory /var/www/api> # does the order matter?
        Require local
        Options -Indexes # is this redundant?
    </Directory>
    ...
</VirtualHost>

我的问题是:

参见 section merging and the Directory directive 的官方文档(感谢 @emix)

  • 是的,第二个 Options -Indexes 是多余的,因为 /var/wwwOptions -Indexes 设置是继承的。
    • 可以覆盖继承的设置,例如Options +Indexes /var/www/api 的规则将显示索引。
  • 指令的顺序似乎并不重要。规则似乎按目录结构级联,而不是指令本身的顺序。
  • 是的,/var/www级联的设置,因为/var/www/api是一个子目录。