2024-09-08 WebDAV no more

I must have implemented WebDAV two or three times in the last decade or two. Just now I used mod_dav for Apache to enable WebDAV for some directories.

WebDAV

mod_dav for Apache

In theory, it's great. You can treat the web server as a file server, connecting to it and using your regular file manager and text editor, using your favourite shell to do things. And if your website already uses permissions to restrict access to some locations, you can use the same config files to handle the making of changes.

In practice, however, the operating systems all have such brittle implementations that none of the solutions I had in production ever worked well. It doesn't matter whether it's Windows' File Explorer, macOS' Finder, the Gnome virtual file system via Nautilus or something else. The only thing that works is the command-line client cadaver. It's the best. It works. Sooner or later, however, I realize that cadaver is probably not the tool I can expect non-technical people to use. It has the same user-interface as the old ftp command-line client.

cadaver

I wonder what the issue is. WebDAV is 25 years old. It seems to me that something about the process or the spec must have set it up for failure. Perhaps it was a complex protocol? RFC 2518 for WebDAV is from February 1999, RFC 2616 for HTTP/1.1 is from June 1999. Perhaps the move from HTTP/1.0 to HTTP/1.1 too away all the thunder. There was the DotCom craze and Web 2.0 and what not. Nobody had time for WebDAV? Nobody had a business model for WebDAV? People used FTP and SSH and all that for remote file access, there was no point doing it using web technology? Or perhaps there wasn't just one library to rule them all and in the darkness bind them?

RFC 2518

RFC 2616

In any case, I think I need to write this down so I don't fall for it again in two years. I've been falling for it since 2005. Every wiki of mine gets WebDAV support … Looking at my blog it seems that the last time I spent five days to get this right. This time around I'm just tired.

the last time

Time to disable `mod_dav` again.

​#WebDAV

cadaver

CarotDAV

Cyberduck

hDAV

WinSCP