如何避免在Apache2 VirtualHosts中的多个Directory指令中重复允许/拒绝访问控制语句?

在Apache2上,我有一个包含多个访问控制语句的<Directory>指令/部分的VirtualHost

 <Directory /foo> Order Deny,Allow Deny from all Allow from ... Allow from ... ... </Directory> ... 

有没有办法指定更高级别的访问控制(在<Directory>之上)? 或者我应该使用macros?

提前致谢!

如果我理解你的问题,你正在寻找一种方法来将一组允许/拒绝限制应用于一组可能不共享公共父目录的目录。

你可以把所有的允许/拒绝指令放到一个单独的文件中(称之为/etc/httpd/conf.d/accesslist ,或者你的发行版中的任何有意义的东西),然后使用Include目录来包含那些规则适当:

 <Directory /some/directory> Include /etc/httpd/conf.d/accesslist </Directory> <Directory /another/directory> Include /etc/httpd/conf.d/accesslist </Directory> 

但是,如果你的目录共享一个共同的configuration,你可以使用类似mod_macro东西来创build一个可变的替代模板。