在我的 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>