Ошибка 404 (страница не найдена) что делать

Ошибка 404 или Not Found и другие,

Иногда, входя на тот или иной сайт мы получаем вместо страницы сайта экран с сообщением об ошибке содержащего сообщение «404» или «Not Found». Большинство ошибок являются служебными и Пользователь их не видит. Они используются администратором сервера на котором расположен Ваш сайт чтобы контролировать работу сервера. Что это такое и в чем причина этого попробую немного рассказать ниже.

Сообщения сервера.

Когда на сервере запрашивается страница (например, когда пользователь открывает страницу в браузере или когда ее сканирует робот), сервер в ответ на запрос возвращает код статуса (состояния) НТТР. Этот код статуса содержит информацию о статусе запроса. Код статуса предоставляет информацию о запрашиваемой странице.

Сообщения сервера описаны в Wiki так:

Код состояния HTTP (англ. HTTP status code) — часть первой строки ответа сервера при запросах по протоколу HTTP. Он представляет собой целое число из трех арабских цифр. Первая цифра указывает на класс состояния. За кодом ответа обычно следует отделённая пробелом поясняющая фраза на английском языке, которая разъясняет причину именно такого ответа.
Примеры:
201 Webpage Created.
404 Not Found.
403 Access allowed only for registered users.
507 Insufficient Storage.
Клиент узнаёт по коду ответа о результатах его запроса и определяет какие действия ему предпринимать дальше, чтобы исключить ошибки.
Набор кодов состояния является стандартом, и они описаны в соответствующих документах RFC.

Таких сообщений существует 40 и они делятся на пять больших групп: информационные сообщения, сообщения об успешном завершении, сообщения о перенаправлении, сообщения об ошибках клиента и сообщения об ошибках сервера.

Подробно рассматривать все я здесь не буду, а приведу только краткое описание:

Status-Code Eng Ru Описание Примечание
100 Continue продолжить Начальная часть запроса принята, и клиент может продолжать передачу запроса 1xx:
Informational (информационные)
101 Switching Protocols переключение протоколов С ервер выполняет требование клиента и переключает протоколы в соответствии с указанием, данным в поле заголовка Upgrade
102 Processing идёт обработка запрос принят, но на его обработку понадобится длительное время. Используется сервером, чтобы клиент не разорвал соединение из-за превышения времени ожидания. Клиент при получении такого ответа должен сбросить таймер и дожидаться следующей команды в обычном режиме
200 OK хорошо Запрос клиента обработан успешно и ответ сервера содержит затребованные данные 2xx:
Success
(успешно)
201 Created создано Этот код состояния используется в случае создания нового URL. Вместе с этим кодом результата сервер выдает заголовок Location, который содержит информацию о том, куда были помещены новые данные
202 Accepted принято Запрос принят, но обрабатывается не сразу. В теле содержимого ответа сервера может быть дана дополнительная информация о данной транзакции. Гарантии того, что сервер в конечном итоге удовлетворит запрос, нет, даже несмотря на то, что на момент приема запрос выглядел допустимым
203 Non-Authoritative Information информация не авторитетна Информация в заголовке содержимого взята из локальной копии или у третьей стороны, а не с исходного сервера
204 No Content нет содержимого Ответ содержит код состояния и заголовок, но тело содержимого отсутствует. При получении этого ответа броузер не должен обновлять свой документ. Обработчик чувствительных областей изображений может возвращать этот код, когда пользователь щелкает на бесполезных или пустых участках изображения
205 Reset Content сбросить содержимое Броузер должен очистить форму, используемую в данной транзакции, для дополнительных входных данных. Полезен для CGI-приложений, требующих ввода данных
206 Partial Content частичное содержимое Сервер возвращает лишь часть данных затребованного объема. Используется в ответе на запрос с указанием заголовка Range. Сервер должен указать диапазон, включенный в ответ, в заголовке Content-Range
207 Multi-Status многостатусный сервер передаёт результаты выполнения сразу нескольких независимых операций. Они помещаются в само тело сообщения в виде XML-документа с объектом multistatus. Не рекомендуется размещать в этом объекте статусы из серии 1xx из-за бессмысленности и избыточности
226 IM Used использовано IM заголовок A-IM от клиента был успешно принят и сервер возвращает содержимое с учётом указанных параметров. Введено в RFC 3229 для дополнения протокола HTTP поддержкой дельта-кодирования
300 Multiple Choices множество выборов Затребованный URI обозначает более одного ресурса. Например, URI может обозначать документ, переведенный на несколько языков. В теле содержимого, возвращенном сервером, может находиться перечень более конкретных данных о том, как выбрать ресурс правильно 3xx:
Redirection (перенаправление)
301 Moved Permanently перемещено навсегда Документ уже не используется сервером, а ссылка перенаправляет на другую страницу
302 Found найдено Запрошенный ресурс временно находится под другим адресом
303 See Other смотреть другое Запрошенный ресурс находится под другим адресом и его следует запрашивать, используя метод GE T
304 Not Modified не изменялось Это код ответа на заголовок lf-Modified-Since, если URI не изменялся с указанной даты. Тело содержимого не посылается, и клиент должен использовать свою локальную копию
305 Use Proxy использовать прокси Доступ к затребованному URI должен осуществляться через proxy-сервер, указанный в заголовке Location
307 Temporary Redirect временное перенаправление Затребованный ресурс был временно переведен на другой адрес, который необходимо прописать в Location
400 Bad Request неверный запрос Запрос не может быть понят сервером из-за некорректного синтаксиса 4xx:
Client Error
(ошибка клиента)
401 Unauthorized неавторизован Для доступа к документу необходимо вводить пароль или быть зарегистрированным пользователем
402 Payment Required необходима оплата Внутренняя ошибка или ошибка конфигурации сервера
403 Forbidden запрещено Доступ к документу запрещен
404 Not Found не найдено Документ по указанному URL не существует. Возможно, такой файл удален, а возможно, вы ошиблись при наборе URL в браузере или пошли по неверной ссылке
405 Method Not Allowed метод не поддерживается Этот код выдается с заголовком Allow и показывает, что метод, используемый клиентом, для данного URL не поддерживается. (Например, при отправки POST данных на страницу, которая не является скриптом)
406 Not Acceptable не приемлемо Ресурс, указанный клиентом по данному URL, существует, но не в том формате, который нужен клиенту. Вместе с этим кодом сервер выдает заголовки Content-Language, Content-Encoding и Content-Type
407 Proxy Authentication Required необходима аутентификация прокси Proxy-сервер должен санкционировать запрос перед тем, как пересылать его. Используется с заголовком Proxy-Authenticate
408 Request Timeout истекло время ожидания Этот код ответа означает, что клиент не передал полный запрос в течение некоторого установленного промежутка времени (который обычно задается в конфигурации сервера) и сервер разрывает сетевое соединение
409 Conflict конфликт Данный запрос конфликтует с другим запросом или с конфигурацией сервера. Информацию о конфликте следует возвратить в информационной части ответа
410 Gone удалён Затребованный ресурс был окончательно удален с сайта
411 Length Required необходима длина Сервер отказывается принимать запрос без определенного заголовка Content-Length
412 Precondition Failed условие ложно При проверке на сервере одного или более полей заголовка запроса обнаружено несоответствие (сбой или ошибка при обработке предварительного условия)
413 Request Entity Too Large размер запроса слишком велик Сервер отказывается обрабатывать запрос потому, что размер запроса больше того, что может обработать сервер
414 Request-URI Too Large запрашиваемый URI слишком длинный Сервер не будет обрабатывать запрос, потому что его URL слишком длинный.
415 Unsupported Media Type неподдерживаемый тип данных Сервер отказывается обрабатывать запрос, потому что тело запроса имеет неподдерживаемый формат
416 Requested Range Not Satisfiable запрашиваемый диапазон не достижим Сервер отказывается обрабатывать запрос, потому что значение поля Range в заголовке запроса указывает на недопустимый диапазон байтов
417 Expectation Failed ожидаемое неприемлемо Сервер отказывается обрабатывать запрос, потому что значение поля Expect в заголовке запроса не соответствует ожиданиям
422 Unprocessable Entity необрабатываемый экземпляр Сервер не в состоянии обработать один (или более) элемент запроса.
423 Locked заблокировано Сервер отказывается обработать запрос, так как один из требуемых ресурсов заблокирован
424 Failed Dependency невыполненная зависимость Сервер отказывается обработать запрос, так как один из зависимых ресурсов заблокирован
425 Unordered Collection неупорядоченный набор посылается, если клиент послал запрос, обозначив положение в неотсортированной коллекции или используя порядок следования элементов, отличный от серверного[уточнить]. Введено в черновике по WebDAV Advanced Collections Protocol
426 Upgrade Required необходимо обновление Сервер запросил апгрейд соединения до SSL, но SSL не поддерживается клиентом
449 Retry With повторить с возвращается сервером, если для обработки запроса от клиента поступило недостаточно информации. При этом в заголовок ответа помещается поле Ms-Echo-Request. В настоящий момент как минимум используется программой Microsoft Money
456 Unrecoverable Error некорректируемая ошибка возвращается сервером, если обработка запроса вызывает некорректируемые сбои в таблицах баз данных
500 Internal Server Error внутренняя ошибка сервера Сервер столкнулся с непредвиденным условием, которое не позволяет ему выполнить запрос 5xx:
Server Error
(ошибка сервера)
501 Not Implemented не реализовано Сервер не поддерживает функциональные возможности, требуемые для выполнения запроса. Этот ответ соответствует состоянию, когда сервер не распознает метод запроса и не способен обеспечить его для любого ресурса
502 Bad Gateway плохой, ошибочный шлюз Сервер, действуя в качестве шлюза или прокси-сервера, получил недопустимый ответ от следующего сервера в цепочке запросов, к которому обратился при попытке выполнить запрос
503 Service Unavailable сервис недоступен Возникла ошибка из-за временной перегрузки или отключения на техническое обслуживание сервера
504 Gateway Timeout шлюз не отвечает Сервер, при работе в качестве внешнего шлюза или прокси-сервера, своевременно не получил отклик от вышестоящего сервера, к которому он обратился, пытаясь выполнить запрос
505 HTTP Version Not Supported версия HTTP не поддерживается Сервер не поддерживает или отказывается поддерживать версию HTTP-протокола, которая используется в сообщении запроса робота
506 Variant Also Negotiates вариант тоже проводит согласование в результате ошибочной конфигурации выбранный вариант указывает сам на себя, из-за чего процесс связывания прерывается. Экспериментальное. Введено в RFC 2295 для дополнения протокола HTTP технологией Transparent Content Negotiation
507 Insufficient Storage переполнение хранилища Сервер не может обработать запрос из-за недостатка места на диске
508 Loop Detected обнаружена петля Сервер не может обработать запрос из-за недостатка памяти
509 Bandwidth Limit Exceeded исчерпана пропускная ширина канала используется при превышении веб-площадкой отведённого ей ограничения на потребление трафика. В данном случае владельцу площадки следует обратиться к своему хостинг-провайдеру. В настоящий момент данный код не описан ни в одном RFC и используется только модулем «bw/limited», входящим в панель управления хостингом cPanel, где и был введён
510 Not Extended не расширено Сервер не может обработать запрос из-за того, что запрашиваемое расширение не поддерживается
Сообщения сервера на этом сайте

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

Ниже, в таблице 2, я привожу их с описаниями и долей в трафике всех сообщений.

Status-Code Статус количество доля % Примечание
404 Document Not Found 4044 53.3 % самая распространенная ошибка при пользовании Интернетом, основная причина — ошибка в написании адреса Web-страницы. Сервер понял запрос, но не нашёл соответствующего ресурса по указанному URI. Если серверу известно, что по этому адресу был документ, то ему желательно использовать код 410. Ответ 404 может использоваться вместо 403, если требуется тщательно скрыть от посторонних глаз определённые ресурсы.
403 Forbidden 1654 21.8 % сервер понял запрос, но он отказывается его выполнять из-за ограничений в доступе для клиента к указанному ресурсу. Если для доступа к ресурсу требуется аутентификация средствами HTTP, то сервер вернёт ответ 401 или 407 при использовании прокси. В противном случае ограничения были заданы администратором сервера или разработчиком веб-приложения и могут быть любыми в зависимости от возможностей используемого программного обеспечения. В любом случае клиенту следует сообщить причины отказа в обработке запроса. Наиболее вероятными причинами ограничения может послужить попытка доступа к системным ресурсам веб-сервера (например, файлам .htaccess или .htpasswd) или к файлам, доступ к которым был закрыт с помощью конфигурационных файлов, требование аутентификации не средствами HTTP, например, для доступа к системе управления содержимым или разделу для зарегистрированных пользователей либо сервер не удовлетворён IP-адресом клиента, например, при блокировках.
206 Partial Content 1208 15.9 сервер удачно выполнил частичный GET-запрос, возвратив только часть сообщения. В заголовке Content-Range сервер указывает байтовые диапазоны содержимого. Особое внимание при работе с подобными ответами следует уделить кэшированию.
302 Moved temporarily (redirect) 571 7.5 запрошенный документ временно доступен по другому URI, указанному в заголовке в поле Location. Этот код может быть использован, например, при управляемом сервером согласовании содержимого. Некоторые клиенты некорректно ведут себя при обработке данного кода.
405 Method not allowed 70 0.9 указанный клиентом метод нельзя применить к текущему ресурсу. В ответе сервер должен указать доступные методы в заголовке Allow, разделив их запятой. Эту ошибку сервер должен возвращать, если метод ему известен, но он не применим именно к указанному в запросе ресурсу, если же указанный метод не применим на всём сервере, то клиенту нужно вернуть код 501.
301 Moved permanently (redirect) 35 0.4 запрошенный документ был окончательно перенесен на новый URI, указанный в поле Location заголовка. Некоторые клиенты некорректно ведут себя при обработке данного кода.
412 Precondition failed 1 0 возвращается, если ни одно из условных полей заголовка[неизвестный термин] запроса не было выполнено.
Итого сообщений 7583 из 345246 просмотров

Что делать посетителю?

Иллюстрация как посмотреть сохранённую копию страницы в поиске Яндекса

  1. пару раз перезагрузить страницу (нажать на символ ⟳ или клавишу клавиатуры F5 ),
  2. попробовать найти ошибки в написании URL,
  3. воспользоваться поиском по сайту,
  4. если возможно, подняться по структуре URL на ступень выше и посмотреть там
  5. если страница осталась в основном индексе поисковой системе (чаще у Яндекса, так как он медленнее реагирует на изменения на сайтах), можно взглянуть на её сохранённую копию. Для просмотра результатов определённого проекта, в строку поиска нужно ввести
  6. если документ когда-то существовал и был разрешён для сканирования, то его копию на конкретную дату часто можно найти в вебархиве (в России периодически блокируется Роскомнадзором),
  7. если страница существует, но запрещена к показу, можно воспользоваться услугами анонимайзера или изменить прокси (по тому же принципу работает расширение браузера friGate). Однако из-за того, что доступ осуществляется через посредника, вводить пароли небезопасно.
  8. описать разработчику (службе поддержки) сайта проблему, вероятно, так он сможет предпринять шаги по её устранению или предупредить других пользователей.

Вид стандартного сообщения об ошибке

    .
  1. при смене домена сайта или URL страницы настроить перенаправление (301 редирект) со старых URL на новые. С удалённых или ошибочных URL, на которые часто переходят посетители (можно узнать из статистики Google Analytics) или на которые ссылаются авторитетные источники (можно узнать из ошибок сканирования Яндекса/Google) сделать перенаправление на похожие существующие материалы.
  2. не делать перенаправление со всех не найденных веб-страниц на Главную без желания человека, это не поможет ему найти искомую информацию.
  3. чтобы посетитель вместо белой страницы с надписью «Not Found» или страницы с реквизитами хостера видел HTML-страницу сайта с рекомендуемыми навигационными вариантами, нужно в файле .htaccess добавить строку

Какой должна быть 404 страница

  • ссылку на Главную страницу и значимые разделы сайта,
  • поиск по сайту,
  • красиво оформленные блоки с акциями, рекомендациями, популярными статьями,
  • форму обратной связи: «Вы можете обратиться к системному администратору сайта и описать проблему».

Пример 404 страницы

Вот, например, на сайте Hotels.com, создаётся впечатление, что идёт диалог

Информационное сообщение 404 — не только ошибка, но и праздник

4.04 все причастные ко всемирной паутине, и веб-мастеры в частности отмечают день Интернета (День святого Исидора Севильского — покровителя сети).

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

Не стану перечислять того множества профессий, которое трудится на благо Сети, ибо для простого обывателя мы по прежнему остаемся «компьютерщиками».

Хочется просто остановиться на историях возникновения данного сообщения(официальных, альтернативных, своих).

Причастные наверняка в курсе, что 404 — это код состояния из трех цифр, корнями уходящий в лихие 90-е.

Версия HTTP 0.9, которая появилась в 1992 году, включала в себя коды состояния из трёх цифр.
Первая обозначала вид сообщения: 1 — информационное, 2 — успех, 3 — перенаправление, 4 — ошибка клиента, 5 — ошибка сервера.

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

А вот ошибка 404 («не найдено») хорошо всем известна.

С ней сталкивался любой пользователь, кто неправильно вводил адрес страницы в строку браузера или переходил по ссылке на несуществующую страницу.

Но это скучная официальная версия.

С ошибкой 404 связана городская легенда.

Якобы в своё время в офисе CERN на четвёртом этаже была комната 404, где находился центральный сервер.

Там сидели несколько человек, которые вручную обрабатывали приходившие запросы.
Если запрос был ошибочным, то появлялось сообщение «Room 404: file not found».

В память о героях, работавших до поздней ночи в стенах CERN, 404-я комната сохранилась как «место Web».

Ни одна другая комната больше не используется для WWW.

Я решил тоже попрактиковаться на литературной стезе и сначала получилось следующее:

В огромном машинном зале вычислительного центра все было подчинено строгому порядку.
И вот в 40 ряду четвертым с краю (запомните эти цифры!) трудился скромный веб-сервер.
Он работал настолько хорошо (uptime 99.99%), что на него просто перестали обращать внимание.
Соседним машинам добавляли памяти, объединяли в кластера и увеличивали емкость жестких дисков, а маленькому серверу не доставалось ничего.

Но он не обижался, а продолжал честно выполнять свою работу, хотя и запоминал все апгрейды, которые делались компьютерам в машинном зале.

И вот, когда 403 разом была замена подающего лотка у принтера, маленькому серверу стало действительно обидно.

Он так разволновался, что даже поднялась температура процессора(запомните этот факт)!
И вот, дабы обратить на себя внимание, он решил подать Людям весточку о себе, но единственное, что он знал — это свой номер и номер ряда!

Поэтому, на все приходящие запросы стал отвечать сообщением — 40 ряд, 4 сервер, либо просто 404, ибо машина что стояла слева красовалась номером 403(и новым модулем памяти), а машина справа была под номером 405, и всем хвалилась новым массивом RAID.

Сообщение родилось совершенно бесполым, но у дежурной смены в тот день было плохое настроение, и они нарекли его ошибкой!

Так маленький сервер получил новый процессор, а сообщение — пол.

По совершенно случайному стечению обстоятельств все это произошло 4 апреля, а как мы знаем рожденные под знаком Овна имеют весьма норовливый характер.

Вот так и бродит теперь по веб-серверам Ошибка 404, требуя дать ей имя и отменить позорный статус, но администраторы почему-то бросаются искать проблему в железе/cофте.

Итак, отныне нарекаю сообщение 404 Наташей, Наталкою или просто Nata!

Но как Вы могли заметить, заглавие украшает совсем другая барышня, а следовательно должен «выстрелить» и другой вариант.

В тридесятом царстве, в тридевятом государстве, нет, не то… Давным-давно в далекой Галактике, снова не так .

Дело было в те самые 90-е годы когда пронхаб-а и в помине не было, а сотрудники организации CERN только работали над разработкой стандарта HTTP.
Так вот, пикантные фото в цифровом виде блуждали просторами FIDO и BBS-ок даже тогда.
При этом модемы 4800 Бит! заметьте в секунду считались весьма неплохим вариантом.

В общем, все мы люди, и сотрудники вышеуказанной организации — тоже, а потому складывали «малинку» в папку с именем 404.

При этом ссылкой делились с менее занятыми коллегами, а дабы не палиться перед начальством и была придумана данная ошибка — page not found!

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

Данная формулировка косвенно подтверждает последнюю версию.

В завершение, хочу пожелать всем поменьше видеть сообщение 404 на своих экранах!

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector