One idea that is floating around in my mind is a way of combining HTTP and LDAP. Usually, the virtual directory tree that is accessible via HTTP is mapped to some directory tree in the filesystem. But why always the filesystem? LDAP directories also provide a hierarchical tree, similar to the filesystem (well, Unix filesystems aren't actually trees, but
DAGs). So, why not map the virtual HTTP directory tree to an LDAP directory? This would look something like this:
http://somehost.com:80/o=foo/ou=bar/cn=baz would be mapped to
cn=baz,ou=baz,o=foo,port=80,dc=somehost,dc=com in the LDAP directory. The
cn=baz,... entry could be of some special object class that is yet to be defined, but it could be a text file, an HTML file, an image, a reference to an external program that should be called (CGI could be implemented this way), whatever. Such an object could also contain the right MIME type or access permissions, so there would be a better transparence for such kind of information.
But currently, this is only a vague idea, with nothing written down (except for this weblog entry), and absolutely no existing code. Feedback is welcome, better (or additional) ideas too, and if anybody wants to work on this, send me preview code.