webdav,控制对文件夹的访问

webdav,控制对文件夹的访问

在我的 webdav 共享的根目录(/var/www/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/。

我做错了什么?

答案1

<Location>与 URLS 匹配,因此该 URLwebdav/myuser仅受第一条限制更宽松的规则的约束。您需要更改为<Directory>或将第二块更改为<Location /webdav/myuser>

答案2

我仍然很好奇<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>

相关内容