Apache在Windows上停止webdav目录列表

时间:2018-05-20 19:45:56

标签: windows apache debian webdav

我正在开发一台服务器,它必须通过WebDav公开提供一些文件。公共可用性和WebDav是必须的,所以我不能只改变它们。 Windows支持(遗憾地)是另一个必须的事情......

如果我可以禁用目录列表会很棒,所以我给webdav链接的人只能猜测链接或只使用我给的链接。

在默认情况下,禁用目录列表非常容易,并且在浏览器中当前配置完全停止dir列表,但是当我通过Windows资源管理器打开它时,我可以轻松地看到整个目录及其内容。我目前的配置是:

<VirtualHost *>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www/web1/web/
    <Directory /var/www/web1/web/>
        Options MultiViews
        AllowOverride None
        Order allow,deny
        allow from all

        <LimitExcept GET PROPFIND>
                        Require valid-user
                </LimitExcept>
    </Directory>

    Alias /v1 /var/www/web1/web

    <Location /v1>
        DAV On
        AuthName "webdav"
    </Location>
</VirtualHost>

如果我不允许PROPFIND方法,windows认为主机不可用(不确定linux是否可以访问它,那不是我的目标)。

是否可以在Windows上停止目录列表?对我来说似乎PROPFIND是导致这种情况的原因,但我不确定我是否可以以某种方式绕过这个问题。你知道我应该如何修改我的配置文件吗?

1 个答案:

答案 0 :(得分:-1)

我知道这个问题很旧,但是在您的VirtualHost文件(/etc/apache2/sites-available/[yoursite].conf中的文件)中,您需要添加一些内容。这是在您的目录标记中。向其提供DirectoryIndex disabled。像这样

<Directory [yourdirectory]>
 (...)
 DirectoryIndex disabled
</Directory>

问候,来自CCD的Chris van den Hoorn。