Настройка страницы с ошибкой 404


Ошибка 404 (Not Found) - означает что, такой страницы не существует. Для корректной индексации страниц сайта поисковыми роботами, необходимо правильно настроить и оформить страницу ошибки 404 с правильным ответом сервера.
В файле .htaccess для сайта на html прописать:
RewriteEngine on
ErrorDocument 404 /not-found.html
В файле .htaccess для сайта на php прописать:
RewriteEngine on
ErrorDocument 404 /not-found.php
Описание команд:
RewriteEngine on - это обязательная строчка в документе .htaccess, чтобы модуль mod_rewrite заработал, (размещается в самой верхней части).
ErrorDocument 404 /not-found.html - это редирект (перенаправление) с ошибки 404 на страницу вашего сайта: http://site.ru/not-found.html
Создать и редактировать файл .htaccess можно через обычный блокнот.
Данный файл должен находиться в корневой папке сайта, на вашем хостинге.
Далее создайте страницу not-found.html и оформите для неё дизайн по вашему усмотрению. На данной странице можно проинформировать пользователя о том, что такой страницы не существует. Обязательно разместите ссылки на главную страницу и основные разделы сайта.

Запретить индексацию страницы с ошибкой 404


После выполнения вышеуказанных действий необходимо запретить поисковым системам индексацию страницы с ошибкой 404. Для запрета индексации страницы с ошибкой 404, нужно в файле robots.txt прописать:
User-agent: *
Disallow: /not-found.html
Disallow: /not-found.php -- прописать для сайта на php
Подробнее о файле robots.txt для сайта
Аналогичным образом рекомендуется настраивать ошибки и с другими кодами.
В файле .htaccess можно указать только одну страницу для редиректа (перенаправления) и обработки всех ошибок. В этом случае продумывайте дизайн для этой веб-страницы и не оформляйте её только под одну ошибку 404.
Пример файла .htaccess - одна страница для всех ошибок:
RewriteEngine on
ErrorDocument 400 /not-found.html
ErrorDocument 403 /not-found.html
ErrorDocument 404 /not-found.html
ErrorDocument 405 /not-found.html
ErrorDocument 408 /not-found.html
ErrorDocument 500 /not-found.html
ErrorDocument 502 /not-found.html
ErrorDocument 504 /not-found.html