Forum Moderators: open
However, if a user gets a 404, then one of the reasons could be that you have changed the internal structure of your site and the SE they have been refered from hasnt reflected the changes yet.
In this case, it might be worthwhile building a custom 404 page (including a sitemap style directory structure). This way if they are looking for something in particullar (from a SE search) then they wont be dissapointed, as although they havent arrived at the page they wanted, they have in front of them a good idea of what you have to offer.
There may be other technical pros and cons on the index vs sitemap vs custom 404 arguement, but im afraid i dont know them! :) Maybe someone else can contribute.
JOAT
<added>dont worry too much about PR - concentrate on what is best for your visitors!</added>
Small hint, in my view: write the page to make people feel they've done something right. If you scream error - no matter how pretty - they'll hit the back button.
You can make custom 404 page-not-found using an .htaccess file. Here's how I did it:
1) Create a file in Notepad called htaccess.txt and store it in same directory on your hard drive as your index.html file.
2) put lines like these in it:
Send a redirect to handle 404 Errors
errorDocument 404 /page-not-found.html
3) save the file to your hard drive
4) make a html file and save-as "page-not-found.html"
5) upload both files to your root directory on your host server.
6) rename the "htaccess.txt" file to ".htaccess" (without the quotes)
7) test it to make sure it works!
Then whenever someone generates a 404 page not found error they will get your custom html page instead of the server's standard 404 error page, and you can control what they see and where they go.