That's all about error 404 "Page Not Found". By definition HTTP 404 is a standard response code meaning that your browser was able to connect to the server, but the requested page/file could not be located by it. Wikipedia provides a lot of information on this topic. For me (and I think others) the main purpose of creating custom 404 page - is search engine optimization. Why should I lose users who made a typo in URL or used an out-of-date link?
As regards Joomla 1.5, if the link you entered is misspelled or page doesn't exists you'll see the following default 404 error page:
I didn't like this 404 error page at all. It provides very detailed description why you've got here, and one link to the home page only. So, when I addressed this issue and searched the web, I found that good practices for custom 404 pages were:
- 404 page should clearly state to visitor that it's error of non-existing page (Joomla's default one says a lot on this);
- it should have links to main page, main menu, most popular content etc.;
- provide some possibilities for tracking and reporting the errors to site's admins (it's better when it's done automatically, instead of asking users to report the broken link);
- it's good to include site search on it;
- and custom 404 page should in reality return 404 error code, in order no to be indexed by search engines.
Those are only several basic principles, they could be enriched with others. When thinking of custom 404 page specially for Joomla, I decided also that it should:
- be created with the help of error.php file in default template main folder, but not Joomla article "404 error page" (as article would be indexed by search engines);
- be light, and design to be created with the help of error.css;
- be great to achieve some level of multi-language support, if site uses more then one language;
- use Google Analytics for automatic tracking of 404 errors.
Please go to the link www.justphp.net/test-error to see an example of custom 404 error page.
Also you could download
the simple 404 error page (3.2 kB).

