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

webdav, контролирующий доступ к папке

В корне (/ var / www / webdav /) моего общего ресурса webdav у меня есть две папки:

valid
myuser

Я бы хотел valid папка должна быть доступна любому действующему пользователю. Так я и сделал:

Alias /webdav /var/www/webdav/
<Location /webdav>
    DAV On
    AuthType Digest
    AuthName "webdav"
    AuthUserFile /etc/apache2/users.password
    Require valid-user
</Location>

и я бы хотел myuser папка доступна только для myuser, так:

Alias /myuser /var/www/webdav/myuser
<Location /myuser>
    DAV On
    AuthType Digest
    AuthName "webdav"
    AuthUserFile /etc/apache2/users.password
    Require user myuser
</Location>

Проблема: другой пользователь (не myuser) получает доступ к webdav / myuser /.

Что я делаю не так?

<Location> соответствует URL-адресам, поэтому URL-адрес webdav/myuser распространяется только на первое правило с более разрешительным ограничением. Вам нужно будет либо изменить на <Directory> или измените второй блок на <Location /webdav/myuser>

Мне все еще интересно, как <Directory> подход будет использоваться @Sven.

Но, похоже, следующее решение проблемы:

Alias /webdav /var/www/webdav/
<Location /webdav>
    DAV On
    AuthType Digest
    AuthName "webdav"
    AuthUserFile /etc/apache2/users.password
    Require valid-user
</Location>

Alias /webdav/myuser /var/www/webdav/myuser
<Location /webdav/myuser>
    DAV On
    AuthType Digest
    AuthName "webdav"
    AuthUserFile /etc/apache2/users.password
    Require user myuser
</Location>