Apache does WebDAV out of the box, while Lighttpd needs the mod_webdav
module to support WebDAV, and it still has some rough edges. For example, Window users will find that their mod_auth
login does not work when they activate WebDAV; this can be compensated by a cookie-based login. Oh, and we need to have webdav support configured at compile time, if we built our Lighttpd from source. The configuration, as always, is pretty straightforward:
server.modules += ( "mod_webdav" ) # activate WebDAV for the server "dav.my.net" $HTTP["host"] == "dav.my.net" { webdav.activate = "enable" # enable writing for members only (identify by sess cookie) $HTTP["cookie"] !~ "sess" { $HTTP["url"] =~ "^/members/" { webdav.is-readonly = "enable" } } }
The important directives here are webdav.activate
and webdav.is-readonly
. The former activates WebDAV, if we set it to enable
. Otherwise, WebDAV is deactivated by default. The latter forbids operations that modify files on the server (PUT and DELETE), and...