Apache's ErrorDocument directive lets you write a CGI script that will be invoked for all 404s. IkiWiki could offer one as an optional wrapper; it would do much the same thing that the existing recentchanges_link (or generic 'do=goto' for CGI) does when encountering a nonexistent page.
I think it'd probably have to be a separate CGI script because the environment with which
404 handlers are invoked is somewhat odd, and because it needs to return a 404 status
(having said that, it might make sense for recentchanges_link
to return 404 rather than
200 anyway if the page doesn't exist).
This turns out to be untrue, as long as the wrapper lets a couple of extra environment variables through. --smcv
This would give IkiWiki the behaviour of many other wikis, where visiting a page that does not yet exist prompts you to create it, without having to invoke the CGI for successful requests.
Due to a well-known MSIE misfeature, error output needs to be at least 512 bytes long, so some padding might also be required.
Implemented in the 'goto' branch in my git repository. You can see this feature in action on my blog. --smcv