有谁知道在Apache的DirectoryMatch指令中是否可以使用正则表达式捕获?我想做类似以下的事情:
<DirectoryMatch ^/home/www/(.*)>
    AuthType Basic
    AuthName $1
    AuthUserFile /etc/apache2/svn.passwd
    Require group $1 admin
</DirectoryMatch>
但到目前为止,我没有成功.
具体来说,我正在尝试为Apache 2.0中的服务器上的各个目录/ vhost创建基于组的HTTP Auth.
例如,指向/ home/www/a的站点A将对组管理员和组a中的所有用户可用,/ home/www/b处的站点b将对组管理员和组b中的所有用户可用,等等我想根据目录名保留所有内容,这样我就可以轻松地将htpasswd用户添加到正确的组并尽可能自动化,但是其他解决问题的建议当然是受欢迎的.
您可以从完全不同的角度解决该问题:启用 perl 模块,然后您可以在 httpd.conf 中包含一些 perl 脚本。然后你可以做这样的事情:
<Perl>
my @groups = qw/ foo bar baz /;
foreach ( @groups ) {
    push @PerlConfig, qq| <Directory /home/www/$_> blah </Directory> |;
}
</Perl>
这样,您甚至可以从数据库中读取您的组和其他信息,或者通过简单地通配 /home/www 或其他任何您感兴趣的内容来读取。
| 归档时间: | 
 | 
| 查看次数: | 1752 次 | 
| 最近记录: |