i have been using the following line successfully on one of our virtual hosts.
ErrorDocument 404 /404.html
the httpd.conf looks like this:
AllowOverride AuthConfig FileInfo
Options FollowSymlinks Multiviews
Options FollowSymlinks IncludesNoExec Multiviews
but in another virtual host which i have set up identically, only an absolute URL works:
ErrorDocument 404 [virtualhost2.com...]
this is not optimal, because the old URL is not left in the browserbar, and i think the actual header sent is a 302.
i have double and triple checked all my syntax, and can't find any errors, but i think it must be something silly which i've missed? it's so odd that it works in one site and not in the other!