Каждый из вас время от времени сталкивается с кодом состояния 404. Он означает, что запрошенный URL не существует. Но с этим кодом состояния связаны и некоторые не столь очевидные технические детали.
Во-первых, немногие знают, что с кодом состояния 404 Web-сервер может выдать
любой HTML-контент — так же, как и с кодом 200. Обычно в сознании людей
код 404 ассоциируется с обобщенной страницей ошибки Apache, но это не всегда так.
Некоторые Web-сайты выдают специализированные страницы 404, предназначенные удобства пользователей. Самые передовые Web-сайты даже выдают посетителям сложения о том, что они имели в виду, на основе ключевых слов в неверном Но независимо от того, является ли страница 404 обобщенной или специальной, она все равно указывает поисковым механизмам, что страница не существует, и ее следует исключить из индекса.
_________________________
Поисковые механизмы никогда не индексируют страницу, которая додается с кодом состояния 404!
_________________________
В статическом сайте ошибка 404 генерируется автоматически — нужно просто удалить файл. К сожалению, многие динамические сайты игнорируют концепцию кодов 404, т.к. она требует дополнительных усилий для своей реализации. Обычно после удаления продукта из базы данных ссылки на страницу этого продукта удаляются с остальных страниц Web-сайта. Но на такую страницу могут остаться ссылки с внешних Web-сайтов, т.е. она может иметь некоторую ссылочную ценность и остаться в индексах поисковых механизмов.
Самое худшее, что можно сделать — возвратить пустую страницу с кодом состояния 200 — а такое нередко случается, если идентификатор продукта уже не существует в базе данных. Это приводит к обилию пустых страниц, проиндексированных поисковым механизмом, т.е. к дублированию контента. Вместо этого следует возвращать код состояния 404 — возможно, с каким-то понятным сообщением об ошибке.
Ну а мораль такова: привыкайте к порядку. Возвращайте коды 404 для всех удаленных страниц. Некоторые специалисты по поисковому маркетингу предлагают не возвращать код 404, а выполнять перенаправление на семантически схожие продукты.
В отличие от кода 404 это сохранит ссылочную ценность. Такое перенаправление
можно выполнить в файле .htaccess или РНР с помощью перенаправления 301, что и будет продемонстрировано ниже в данной главе.