Apache——Config WebDAV


我需要在Apache上配置WebDAV,阅读了Apache的官方文档,查找了多方资料,花费了我好几个小时终于配置成功了,将配置过程记录为下面的文字。

Enviroment

Web Server: Windows XP Professional Service Pack2 , Apache 2.2
Client: Windows XP Professional Service Pack2 ,IE6

Config File
需要注意的部分我用红色突出显示。

-------------httpd.conf------------------------
#...
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
#...
# Distributed authoring and versioning (WebDAV)
Include conf/extra/httpd-dav.conf
#...

------------httpd-dav.conf--------------------------
#
# Distributed authoring and versioning (WebDAV)
#
# Required modules: mod_dav, mod_dav_fs, mod_setenvif, mod_alias
#                   mod_auth_digest, mod_authn_file
#

# The following example gives DAV write access to a directory called
# "uploads" under the ServerRoot directory.
#
# The User/Group specified in httpd.conf needs to have write permissions
# on the directory where the DavLockDB is placed and on any directory where
# "Dav On" is specified.

DavLockDB "D:/Apache Software Foundation/Apache2.2/DAVLock"

Alias /load "D:/Apache Software Foundation/Apache2.2/load"

<Directory "D:/Apache Software Foundation/Apache2.2/load">
    Dav On

    Order Allow,Deny
    Allow from all

    AuthType Basic
    AuthName load
    # You can use the htdigest program to create the password database
    AuthUserFile "D:/Apache Software Foundation/Apache2.2/DavPwd/user.pwd"

    #Allow universal read-access, but writes are restricted
    # to the admin user.
    # The LimitExcept must have PROPFIND privilege
    <LimitExcept GET PROPFIND OPTIONS>
        #The username format should be usename@YourDomain
        require user dav@MyDomain.com
    </LimitExcept>
</Directory>

#
# The following directives disable redirects on non-GET requests for
# a directory that does not include the trailing slash.  This fixes a
# problem with several clients that do not appropriately handle
# redirects for folders with DAV methods.
#
BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully

Create Password Database

Use htpasswd.exe to create the password database,it's a file which AuthUserFile refer to.由于我使用的是Basic认证,所以使用bin目录下的htpasswd.exe 去生成上面配置文件中AuthUserFile 所指的那个文件:user.pwd。如果使用摘要认证的话,则使用htdigest.exe,两者的语法是类似的。这里我使用这样的命令(I execute the command like this):
htpasswd.exe -c "D:/Apache Software Foundation/Apache2.2/DavPwd/user.pwd" dav@MyDomain.com
回车后,会提示让你输入两次密码。

Config WebDAV Client

Windows XP对WebDAV支持得比较好,我们可以使用其网上邻居或者映射网络磁盘的方式连接到WebDAV Server,还可以使用IE连接。我在IE中使用“打开Web Folder”的方式打开“http://localhost/load”所指的WebDAV文件夹。

Postscript
需要补充说明的是,有些资料说在XP上需要使用“地址+端口号”或者“地址+#”的方式打开WebDAV文件夹,因为Windows2000和WindowsXP的WebDAV Driver的版本是不同的。

Reference
http://www.webdav.org/mod_dav/
http://www.webdav.org/mod_dav/faq/#00-00
http://www.thrrrust.com/~pclark/blog/2005/03/fun-with-windows-xp-and-webdav.html
http://www.debian-administration.org/articles/279
http://ulihansen.kicks-ass.net/aero/webdav/

posted @ 2006-06-26 09:53  风满袖  阅读(9872)  评论(5编辑  收藏  举报