I worked almost a day on getting Apache 2.4 working with WebDAV.
I was working with Apache 2.4.48, on Debian Bullseye. Refering to the docs on my machine at
file:///usr/share/doc/apache2-doc/manual/en/mod/mod_dav.html. or on the web, https://httpd.apache.org/docs/2.4/mod/mod_dav.html
Here is the sample code:
DavLockDB "/usr/local/apache2/var/DavLock" <Directory "/usr/local/apache2/htdocs/foo"> Require all granted Dav On AuthType Basic AuthName DAV AuthUserFile "user.passwd" <LimitExcept GET POST OPTIONS> Require user admin </LimitExcept> </Directory>
And very useful additional code:
Alias "/phparea" "/home/gstein/php_files" Alias "/php-source" "/home/gstein/php_files" <Location "/php-source"> Dav On ForceType text/plain </Location>
- On Debian, you dont need to provide
DavLockDB. Debian provides a usefull default in
Require all granted,
<LimitExcept GET POST OPTIONS>combo does not work to limit access. I used
Require valid-userand a version of the second snippet to control access.
- WebDAV will not work with Apache 2.4 unless you specify
Here is my version, with workarounds for these issues.
Alias "/editing/location" "/location/of/wiki" <Location "/editing/location"> # RequestHeader needed only for TiddlyWiki RequestHeader edit "If-Match" '^"((.*)-(gzip|br))"$' '"$1", "$2"' DAV On DirectoryIndex disabled AuthType Basic AuthName "edit wiki" AuthUserFile "some/file" Require valid-user </Location>