客户端不持有请求的权限(Apache2 + WebDAV)

时间:2015-01-25 18:20:28

标签: php windows apache webdav

这让我发疯了。我的Debian Wheezy服务器上启用了WebDAV的Apache2服务器。我可以访问它并从中读取它似乎正在运行。

从我的Windows 7笔记本电脑运行一个名为NetDrive2的软件,它将网络驱动器安装到我的WebDAV文件夹,以便我可以用驱动器号访问它。

每当我尝试将文件从Windows 7笔记本电脑复制到我的WebDAV驱动器时,我有时会收到错误消息:

错误0x80070522:客户端未持有所需的权限。“

WebDAV文件夹具有Basic AuthType,并且我已经提供了正确的用户/通行证。它不是SSL。

我自己做了一些调试,我不确定,但似乎我无法创建一个与同一目录中的文件同名的文件夹:

文件夹:   - file.php   - file /(由于file.php存在,无法创建此目录)。

有人有什么想法吗?我被卡住了!

1 个答案:

答案 0 :(得分:0)

好吧谷歌搜索我终于找到了导致问题的原因。我无法相信在任何教程中都没有提到这一点。

这家伙给了我答案: Apache Webdav, unable to create "test" folder when file test.txt exists

基本上,您必须将AllowOverride noneOptions None添加到您的webdav目录。

这是我在Apache2中的webdav主机的最终配置:

Alias /devshed /home/www/sites/dev
Alias /devsheddav /home/www/sites/dev

<Directory /home/www/sites/dev/>
        AllowOverride none
        Order allow,deny
        Allow from all
        Options +Indexes +MultiViews
        IndexOptions FancyIndexing
</Directory>


<Location /devshed>
        DAV Off
        Order allow,deny
        Allow from all
        AuthName "Pennybridge Devshed Web"
        AuthType Basic
        AuthUserFile /home/www/htaccess/sites/dev/dev.htpasswd
        Require valid-user
</Location>

<Location /devsheddav>
        DAV On
        Options None
        Order allow,deny
        Allow from all
        AuthName "Pennybridge Devshed WebDAV"
        AuthType Basic
        AuthUserFile /home/www/htaccess/sites/dev/dev.htpasswd
        Require valid-user
        php_flag engine off
        BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
        DirectoryIndex disabled
</Location>