我使用Apacheconfiguration了WebDAV服务器。 这是我的configuration:
DAVLockDB /var/www/DAVLock.db <Location /majid> AllowOverride None Options +Indexes DAV On AuthUserFile /var/www/users.db AuthName Authentication AuthType Basic <Limit GET PUT DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK> Require user majid </Limit> </Location> Alias /majid /var/www/dav/majid
/var/www/DAVLock.db由apache用户和组拥有。 我可以通过浏览器访问WebDAV共享。 我已经在Windows XP SP3中configuration了WebFolder 。 但是我无法创build文件和文件夹。 error_log文件说:
[Tue Oct 11 17:05:12 2011] [error] [client 192.168.1.2] File does not exist: /var/www/dav/majid/New Folder [Tue Oct 11 17:05:12 2011] [error] [client 192.168.1.2] The locks could not be queried for verification against a possible "If:" header. [500, #0] [Tue Oct 11 17:05:12 2011] [error] [client 192.168.1.2] Could not open the lock database. [500, #400] [Tue Oct 11 17:05:12 2011] [error] [client 192.168.1.2] (13)Permission denied: Could not open property database. [500, #1]
谁能帮忙? 另一个问题是:我们是否需要WebDAV客户端的Options +Indexes来列出文件和文件夹,还是仅使用浏览器进行Web访问?
ls -ld /var/www/ drwxr-xr-x. 9 root root 4096 Oct 11 15:54 /var/www/
chown -R apache:apache /var/www/ ,撤销你的改变并重试。
这对我来说是个问题,但根据mod_dav的文档:
“包含锁数据库文件的目录必须可以由运行Apache的用户和组写入。”
您必须确保您对DAV锁DB文件和包含它的目录具有适当的权限。
在我的全新安装中,/ var / www /目录没有为apache组设置写权限。 / var / lib / dav /目录默认设置了这些权限,这就是为什么它为Majid工作。 知道这一点,你有适当的权限在你select的某个目录。
(老问题,但它仍然出现在我的search,我不是一个configurationvoodo的粉丝,所以对我来说,这有助于知道为什么 Majid Azimi的configuration更改为他工作。
我删除了这一行:
DAVLockDB /var/www/DAVLock.db
并使用Apache的默认configuration:
<IfModule mod_dav_fs.c> # Location of the WebDAV lock database. DAVLockDB /var/lib/dav/lockdb </IfModule>
它现在正在完美地工作。 但是我还不知道原因。