В корневой .htaccess
вверху ставишь
ErrorDocument 401
http://www.ваш_сайт.ru/404
ErrorDocument 403
http://www.ваш_сайт.ru/404
ErrorDocument 404
http://www.ваш_сайт.ru/404
ErrorDocument 500
http://www.ваш_сайт.ru/404
Ниже добавляешь
RewriteRule ^404(/?)+$ index.php?menu=404 [L]
В корневой index.php добавляешь
case "404": include("pages/_404.php"); break; // Страница ошибки
И соответственно дальше берешь файл из папки pages, например _about.php
переименовываешь его в _404.php
редактируешь как нужно и кидаешь в папку pages
Может в идеале не так нужно, но вроде всё работает )))