Назад | Перейти на главную страницу

Разделы вложенных ограничений Apache

Я пытаюсь ограничить доступ к определенным каталогам в SVN следующим образом, используя сервер Apache httpd для управления запросами. В основном я хочу разрешить доступ к / для всех аутентифицированных пользователей и разрешить доступ только к путям, соответствующим / root // ветки / выпуск конкретному пользователю. Возможно ли такое? пример неработающего кода ниже.

<Location />
    DAV svn
    SVNPath c:/svnrep/svn_repository
    AuthType Digest
    AuthName "example"
    AuthDigestDomain /
    AuthUserFile c:/users
    Require valid-user
</Location>


<Location /root/*/branches/release*>
    DAV svn
    AuthType Digest
    AuthName "example"
    AuthDigestDomain /svn
    AuthUserFile c:/users
    Header add test result
    Require user exampleuser
</Location>

Похоже, что работает следующее.

<Location "/svn">
    DAV svn
    SVNPath c:/svnrep/svn_repository
    AuthType Digest
    AuthName "example"
    AuthDigestDomain /svn
    AuthUserFile c:/users
    Require valid-user
</Location>

<Location "/root/projectName/branches">
    Header add test result
    Require user exampleuser
</Location>

Есть два фундаментальных отличия между этим и предыдущим.

  1. Второй блок местоположения не содержит сопоставления с SVN. На самом деле это имеет смысл, поскольку в исходном примере он пытался сопоставить корень svn с внутренней структурой.
  2. По какой-то причине у меня не работает синтаксис с подстановочными знаками, хотя синтаксис с подстановочными знаками упоминается в http://httpd.apache.org/docs/2.2/mod/core.html#location ядро apache