ру/ководство/Работаем над ошибками

|  | § 93. Работаем над ошибками . URL errare humanum est [05.07.02] |

[01] |  | Иногда вас ошибают адресом. Вы ищете в доме квартиру номер 58, а такой нет. Варианта два — или ее никогда не было, или вы зашли не в тот дом. То же самое происходит и на вебе — страницы или файла, которых вы искали, может не оказаться. |

[02] |  |  |

[03]

Интернет растет и перестраивается. Многих страниц, работавших год назад, сегодня уже нет. В этом можно легко убедиться, пойдя по ссылкам из какого-нибудь каталога. Ничего плохого в этом нет (телефонные номера тоже не всю жизнь принадлежат одному и тому же человеку). Во-первых, страница специально могла создаваться на небольшой срок. Во-вторых, ее могли просто убрать за ненадобностью. В-третьих, она могла переехать по другому адресу. Во всех этих случаях вы должны увидеть в окне браузера сообщение о том, что страница не найдена и найденной быть не собирается.

[04]

Каждый раз, когда вы нажимаете на ссылку или набираете адрес руками, ваш браузер посылает запрос серверу. Они здороваются, браузер интересуется, как там дела. Сервер отвечает — все нормально, забирай свои манатки. Или просит сперва сказать волшебное слово. Или, наоборот, сообщает, что ничего отдавать не собирается.

[05]

В целях экономии времени сервер каждый свой ответ выдает в виде номера (как в анекдоте о пронумерованных анекдотах). Эти номера называются кодами статуса. Существует пять групп этих кодов, они различаются по первой цифре:
1xx — информация
2xx — успешное действие
3xx — переадресация
4xx — ошибка на стороне клиента
5xx — ошибка на стороне сервера

[06]

Вторые две цифры (xx) обозначают порядковый номер кода. Скажем, когда вы запрашивали страницу с этим параграфом, ваш браузер сначала получил от сервера код 200, а потом только начал забирать сам документ. В четвертой группе код 401 означает, что пользователь должен авторизоваться (ввести логин и пароль). Код 402 означает, что запрашиваемый файл доступен только за деньги, но пока этот код не используется вообще. Код 403 сообщает о том, что доступ запрещен. А код 404 — «не найдено».

См. также:

Коды статуса HTTP 0.9 (документ для историков)

Коды статуса HTTP 1.1 (финальная версия)

[07]

Коды статуса были утверждены в 1992 году в рамках спецификации протокола HTTP 0.9 консорциумом W3C. Автором является тот же мужик, который придумал веб, первый браузер и язык HTML — Тим Бернерс-Ли. За основу была принята система кодов статуса, использовавшаяся с начала 80-х в протоколе FTP.

См. также:

Домашняя страница Тима Бернерса-Ли

Официальная спецификация FTP

[08] |  | Теперь, когда мы узнали, что цифра 404 взята не с потолка, можем перейти к вопросам извлечения выгоды из ситуации, когда документ не найден. |

[09]

Хорошим тоном в организации сайта является не только внятное содержание главной страницы, но и помощь пользователю в понимании того, на каком свете он находится. Нас интересует конкретный случай — пользователь запросил документ, которого на сайте по какой-то причине нет. Такая ситуация возможна в случае, если он набирал адрес руками и ошибся, или если он нажал на ссылку на вашем сайте (или на чужом — не важно), которая ведет на адрес, по которому ничего нет.

[10] |  | В окне браузера появится такая надпись: |

[11] |  | 404 Not Found The requested URL /botva was not found on this server. |

[12]

Грех не воспользоваться моментом и не помочь заблудившемуся посетителю. Многие создатели сайтов вместо этой надписи вешают на страницу рекламу, кучу зазывающих картинок и тонны прочей информации, которой пользователь совершенно не ожидал. Это плохо.

[13]

Скорость появления страницы в первую очередь зависит от ее объема в килобайтах. Поэтому на странице 404 лучше не размещать:

- рекламу
- много текста
- графику (кроме логотипа)

[14]

Кроме того, несуществующую страницу нельзя позволять спутать с обычной. Поэтому страница 404 не должна содержать:

- меню основного сайта
- верстку типовой страницы
- цвет типовой страницы

[15] |  | Чем раньше и скорее пользователь узнает, что попал не туда, куда собирался — тем лучше. |

[16]

Начать нужно с заголовка окна. Пока еще ничего не загрузилось, по одному только заголовку с надписью «страница не найдена» уже можно понять, что в адресе ошибка. Если пользователь набирал адрес руками и опечатался, он тут же нажмет на кнопку «стоп» и исправит адрес. Если он пошел по указанной где-либо неправильной ссылке, он может дождаться загрузки 404-й страницы и сориентироваться на месте. Чтобы помочь посетителю разобраться, на странице ошибки должна кратко быть представлена информация о том, что:

- неправильно набран адрес
- такой страницы никогда не было на этом сайте
- такая страница была, но по этому адресу ее больше нет

[17] |  | Последний пункт может предлагать опытным пользователям сообщить об ошибке администратору сайта. Кроме того, на странице обязательно должны быть ссылки на карту сайта (если есть) и на поиск (или сама форма поиска). |

[18]

Желательно, чтобы страница 404 использовала все доступные визуальные средства для сообщения о том, что это не часть сайта, а тупик. Надпись в заголовке, другой фон страницы, отсутствие графики, черно-белый логотип вместо цветного, краткие инструкции по дальнейшим действиям — так должна выглядеть идеальная 404 страница, которая поможет пользователю как можно быстрее найти то, за чем он на сайт пришел.

[19]

Презентационные сайты часто дают возможность немного отойти от сухого информационного стиля. В Студии Лебедева на странице 404-й ошибки команда создателей сайта позволяет себе сделать что-нибудь веселое. Скажем, на 404-й странице сайта автомобильного производителя «ИЖ-авто» логотип нарисован с обратной стороны, а ниже висит фотография, снятая в одном из цехов завода «Ижмаш»:

[20] |  |  | Источник: | http://www.izh-avto.com/404/

[21] |  | Правильно сделана 404-я страница у MSN.com (слева) и совершенно чудовищно — у MSNBC.com (справа): |

[22] |  |  | Источник: | http://www.msn.com/404/ http://www.msnbc.com/404/

[23] |  | Компания «Пежо» в 1957 году выпустила автомобиль Peugeot 404. Страницу ошибки на ее сайте (только на западном, а не на российском) иллюстрирует как раз эта модель. |  | peugeot.com/404 Peugeot 404

[24]

Наконец, самое важное, что должен учесть создатель сайта — это сохранение ошибочного адреса в адресной (пардон за тавтологию) строке. Когда сервер перебрасывает пользователя на заранее подготовленную страницу со своим отдельным адресом (типа www.***.ru/error/), не забудьте высказать свое «фи» администратору ресурса. Когда пользователь ошибся одной буквой и хочет исправиться, ему такая возможность должна быть предоставлена незамедлительно (чтобы не набирать адрес заново).

[25] |  | Если вы хотите узнать, существует ли на сайте страница 404, воспользуйтесь нашим специальным инструментом. Введите адрес любого сайта и нажмите Enter: |

[26] |  |  | Примеры запросов: | http://www.nestle.ua/404 http://www.design.ru/404 http://www.bochkarev.ru/404

Copyright © 1997—2002 Артемий Лебедев | E-mail: tema@tema.ru | <- Вернуться к оглавлению