Код ответа сервера. Описание кода ответа 200, 301, 404.
Код ответа это инструкция, которую получает посетитель, заходя на страницу сайта. С помощью этой инструкции браузер может скорректировать обработку страницы на стороне посетителя. На первый взгляд, код ответа сервера фактор, не имеющий никакого отношения к продвижению сайтов. Однако это не так. Да, настройки ответа сервера не могут улучшить ранжирование сайта, но допущенная в них ошибка может поставить крест на ваших планах покорения топа результатов поиска.
Поисковые роботы, как и посетители, учитывают коды ответов сервера и на их основании корректируют обработку страниц. В частности, по кодам ответа поисковые системы принимают решение о том, что:
– страница существует и работает корректно;
– страница не существует;
– страница перемещена навсегда;
– страница временно перемещена;
– сервер загружен и не может обработать запрос.
Существуют и другие, менее значимые, инструкции.
Поисковые системы добавляют в свою индексную базу
Страница-шлюз может быть удалена или понижена в ранжировании (это зависит от типа редиректа). Если страница отдавала код ответа 200 и попала в индексную базу, но позже была удалена и теперь отдает код 404, она со временем удаляется из индексной базы. Если на странице поставить 301 редирект, то через некоторое время она будет также удалена из индекса, а ее вес в некоторых случаях будет передан той странице, на которую ссылался редирект.
К сожалению, Яндекс очень долго осуществляет переиндексацию страниц с редиректом: были зафиксированы случаи, когда переклейка происходила почти год.
Коды ответа сервера и коды ошибок: 100, 101, 200 — 207, 300 — 307, 400 — 451, 500
Если вы собираетесь заниматься web-технологиями, созданием и содержанием сайтов или их раскруткой, нужно научиться общаться с ними.
Сервера страниц содержат специальные коды для сообщения пользователю о возникшей неполадке. Они также сообщают сервису важную информацию, благодаря которой он знает, как ему действовать в дальнейшем.
Общение между сайтом и его создателем – процесс крайне важный, и именно от него зависит популярность и посещаемость ресурса, поскольку на неработающую страницу спроса не будет.
В связи с этим администратор должен реагировать мгновенно и понимать, на что именно жалуется или о чем сообщает его сервис (знать все коды ответа и ошибки сервера), чтобы не терять клиентов.
Для этого были разработаны специальные коды, которыми сервер не только сообщает о своей неработоспособности посетителю, но и говорит хозяину, в каком направлении искать ошибку или неполадку.
Основные ошибки – коды и их значения
Как правило, вывод ошибки на сайте не всегда означает проблему. Кроме того многие информационные сообщения не отображаются, и увидеть их можно только в логах работы сервера.
Каждое из них имеет свое значение. Самые известные коды ответа сервера видел каждый пользователь глобальной сети.
Наиболее известные – 404 и 301, но о многих из них большинство сетевых администраторов даже не слышали, поскольку такие сообщения несут чисто информационный характер.
По назначению ответы делятся на пять категорий и распределяются сотнями 100-500. Различают следующие 5 типов кодов:
- Информационные сведения;
- Подтверждение и принятие действия или команды;
- Redirect или перенаправления;
- Ошибка со стороны клиента;
- Неполадки и сообщения со стороны сервера.
Большинство ошибок имеют информационных характер независимо от принадлежности к категории. Однако именно это и помогает выявить нарушение в работе между клиентом и сервером, а также быстро сориентироваться в связующих между ними.
Сообщения информационного характера: 1ХХ
Такие ответы сервера наиболее встречающиеся. Часто они просто сообщают о том, что он включен или выключен, а также могут содержать более подробную информацию о подключенных опциях и используемых сервисах, общей работе и данных о трафике.
Продолжение действия (Continue server code): 100
Как ни странно, это не ошибка и не неполадка. Видеть это сообщение в коде – удовольствие для системного администратора.
100 Continue означает стабильную работу в штатном режиме. То есть сбоев в обработке информации по запросу не было, и все они обрабатывались сервером при обращении клиента.
Сообщением 100 сервис говорит о запуске и продолжении обработки данных по запросу, пока все пакеты не будут переданы.
Оно используется как начало соединения. И так будет до окончания обработки и завершения сессии.
Протоколы переключений (Switching Protocols): 101
Это еще одно сообщение, которое имеет только информационный характер. Такое можно обнаружить в логах любого сервера или базы данных, к которой обращается сетевой ресурс.
101 Switching Protocols означает, что со стороны клиента произошла попытка смены протокола для обращения к сайту. Сервер должен дать согласие на это, если кончено он поддерживает обращение с таким типом протокола.
Очень часто можно увидеть подобные сообщения в записях, когда пользователь использует очень старый браузер, который не умеет работать с современными версиями HTML, или же при обращении к сервису по защищенному протоколу, когда таковой не является принятым по умолчанию, но поддерживается для ответа, например, https:// вместо http:// или наоборот.
Сообщения подтверждения и принятия (Success): 2ХХ
Специальный тип кода, который используется, чтобы сообщать о разрешениях сервера на исполнение запросов или использование частей сервиса и протоколов.
В случае если отправленный клиентом запрос поступил на обработку, и процесс запущен, в логах сообщается об этом. Также в такой записи могут содержаться данные заголовков или части записей, если они разрешены сервисом.
Все хорошо (ОК): 200
Сообщение подобного характера говорит о том, что передача данных завершена успешно, все запросы были обработаны, и всё нормально.
200 ОК – наиболее популярный и известный код любого лога. Он крайне незаметен, поскольку если все хорошо, то и обращать внимание незачем.
Изначально подобный способ ведения системных записей использовался операционными системами *.NIX, которые при загрузке общались с администратором приблизительно также, выдавая код «ОК» или «Fail» для каждой ожидающей загрузки службы.
Создано (Created): 201
Код используется по назначению, указанному в названии. Как правило, подобное сообщение означает создание чего-то нового в процессе или по завершении его обработки и запроса.
Хорошим примером будет создание нового профиля пользователя по окончании регистрации. В таком случае будет несколько записей 201 Created при создании имени пользователя, пароля, профиля, пользовательской страницы.
Если вдруг по какой-то причине ресурс не может быть создан, то появится следующий порядковый код.
Принято (Accepted): 202
Этот код означает, что запрос принят и находится в процессе или ожидании обработки сервером, например, когда нагрузка на ресурс очень велика.
В этом состоянии сессия может обрываться при невыполнении определенного условия или будет принята и выполнена позже.
Изначально запрос не имеет обязательного исполнения, поэтому он может быть отложен. При этом в ожидании клиента вовсе нет необходимости, поскольку передача кода может быть осуществлена через очень длительное время.
Неактуальные данные (Non-Authoritative): 203
Запись лога сообщает, что сервер принял запрос, и его обработка прошла успешно. Однако данные могут быть неактуальными и несвежими, поскольку были взяты из второстепенного источника.
Сообщение Non-Authoritative 203 часто используется вместо 200, когда запрос ведет к информации, находящейся в архивах (для сокращения объема и увеличения обработки скорости запроса) или в резервных базах.
Очень часто под этим кодом могут проходить и нормальные, стабильные запросы, когда остальные данные были восстановлены после сбоя, и сервером найдены мелкие несоответствия записям, например, по времени или датам.
Нет содержимого (No Content): 204
Таким образом, сервер сообщает, что от клиента были получены данные запроса, он понял информацию и обработал её.
Но согласно полученным данным, ему нечем ответить, поскольку нет содержимого, которое соответствует полученному запросу. То есть данных для этого пользователя не существует.
Используется код состояния HTTP 204 No Content в основном для того, чтобы не запрещать обработку сессий скриптов, при этом документ может оставаться неизменным.
Код не несет сообщения и не содержит его, включается сразу под заголовком в любую пустую строку, которая окажется первой. Нужен он тогда, когда необходимо авторизоваться или осуществить другие действия без обновления самой страницы.
Сбросить содержимое (Reset Content): 205
По смыслу запись 205 Reset Content аналогична предыдущей. Однако в этом состоянии сервер требует от клиента обновления страницы.
Даже если запрос успешно обработан и всё выполнено, может возникнуть необходимость очистки данных или их самостоятельного удаления пользователем, например, после прохождения регистрации при последующей идентификации на сервере.
Также используется для очистки заполненной формы в целях безопасности, то есть при обновлении данные исчезают и верифицируются только при новой авторизации.
Частичный сброс содержимого (Partial Reset): 206
Код ошибки сервера, когда он возвращает лишь часть содержимого контента, которое соответствует запросу. Зачастую используется как дополнение к параметрам кэширования страницы для ускорения отображения и обработки её данных.
То есть информация выводится поэтапно, тем самым экономя время пользователя и трафик загрузки, если обработанный запрос не является правильным.
Такой вариант обработки часто используется на многофункциональных и тяжелых сайтах, когда при переходе на следующую страницу или при обработке нового запроса данные обновляются только в той части, где это необходимо.
Многозадачный статус (Multi-Status): 207
В таком сообщении сервер обрабатывает сразу несколько исполняемых запросов и операций, сохраняя и объединяя их в один файл формата .Xml.
В таком виде логирование более удобно для исследования сетевым администратором и, как правило, разделено по типам и форматам вывода кодов или причинам, по которым они возникали.
Redirect и опции перенаправления: 3ХХ
Категория сообщений сервиса перенаправления сообщает, откуда и куда был направлен пользователь, а также указывает причину осуществленного действия.
Как правило, запрос клиента состоит не только из текстовой информации, по которой он ищет контент, но и из ссылки реферера, которая указывает откуда и с какими параметрами посетитель перешел на сайт.
Это очень важно для определения целей, с которыми клиенты идут на ваш сайт или на конкретную его страницу, опцию.
Это помогает настроить функцию перенаправления таким способом, чтобы максимально увеличить отдачу, предоставляя клиенту как можно более релевантные страницы и экономя на их раскрутке.
Очень просто привести пример на геотаргетинге. Если посетитель пришел по запросу: «купить стиральную машину недорого», но он не интересует вас как покупатель, потому как проживает в другой стране, вы можете его продать или обменять, тем самым увеличивая прирост потенциальных покупателей с других сайтов или дополнительно монетизируя ваш ресурс.
Но можете и направить его на страницы доставки вашего сервиса или партнера – опять же не потеряете посетителя просто так.
Также опция перенаправления очень излюблена теми, кто зарабатывает на дорвеях. Но кроме всего этого она служит незаменимым помощником в случае, когда сайт переезжает на другой хостинг (в процессе ремонта) или поменял домен.
Один из многих (Multiple Choices): 300
Интересный код, который сообщает посетителю о переезде ресурса, но вместо автоматического перенаправления предлагает клиенту выбрать один из сайтов, который наиболее подходит его интересам.
Такой вид запроса используется в том случае, когда релевантная ссылка ведет не на соответствующий контент, а на каталог, в котором он находится.
То есть указанный путь не до конца прописан пользователем или специально так обработан сервером.
Можно привести пример, когда на сайте есть множество товаров разных видов и моделей, а посетитель попал туда по запросу «видео». Тогда сервером автоматически выдается ответ, и предоставляются на выбор страницы с видеокамерами и видеоплеерами.
Перемещена на постоянной основе (Moved Permanently): 301
Это самый часто используемый код. Именно он сообщает, что страница, на которую хотел попасть посетитель, более не существует, и она перемещена или удалена. Также это относится и к ссылкам, когда они ведут на несуществующий сайт.
Есть еще одно применение, которое интересует администраторов рекламных площадок. Это специально размещенные страницы сайта с подробным описанием какого-либо товара, но ссылка специально указана неверно.
Поэтому сервер выводит сообщение 301 и перенаправляет на товар без описания (используется для экономии места теми, кто продвигает продажи товаров текстами копирайтеров).
Подробно про 301 редирект прочитаете из предыдущей стати «Как настроить на сайте 301 редирект».
Страница обнаружена (Found): 302
Код означает временное перемещение ресурса. Он часто используется для тестирования сторонних хостингов или серверов на предмет устойчивости при большом количестве запросов или dDOS атаке.
Как правило, сообщение содержит информацию о причинах временного изменения адреса и прямой ссылке на страницу, релевантную запросу пользователя.
Увидеть другую (See Other): 303
Код ответа сервера 303 используется для вывода сообщения посетителю о том, что другая страница более релевантная для его запроса, чем та, на которую он сейчас попал.
То есть пользователь попал не на ту страницу, которая ему на самом деле нужна, и код указывает ему, по отношению к какому адресу правильнее сформировать запрос.
Как правило, эту опцию используют тогда, когда нужно перенаправить данные исполняемого скрипта в процессе сессии на выбранный сайт для POST обработки.
Не подвергался изменениям (Not Modified): 304
Код состояния HTTP 304 Not Modified означает, что исполнение запроса пользователя на этой странице интересует только в том случае, если произошли какие-либо изменения. Иначе используется старая версия из кэша.
При этом обращения к серверу от клиента не происходит вообще, а если сессия активируется, то будет перенаправлена.
Опция очень удобна, поскольку, используя один из параметров внесения изменений, посетитель может отслеживать и наблюдать за новостями ресурса со стороны клиента. Со стороны сервера это позволяет заинтересованного пользователя перекидывать на измененные документы при необходимости (по запросу об изменениях).
Доступ к странице при помощи прокси (Use Proxy): 305
Сообщение указывает, что доступ к ресурсу не возможен, если вы не используете прокси сервер. Эта опция часто нужна для идентификации и разграничения уровней доступа пользователей к определенным частям сайта.
Также часто используется при доступе через html к базам данных, когда определенные записи выдаются лишь тем пользователям, настройки прокси которых (включая порт, адрес, пользователя и пароль) указаны соответствующим образом.
Включите прокси (Switch Proxy): 306
Выдавая подобное сообщение, сервер должен был говорить клиенту: «выставь указанные параметры прокси, чтобы пройти по запросу на страницу».
Однако на данный момент опция не используется за ненадобностью.
Временное перемещение (Temporary Redirect): 307
Используется при необходимости временного замещения одной страницы на другую и перенаправления на неё пользователя. Однако код 307 немного отличается по функциональности от 302.
В основном это касается того, что запросы продолжаются относительно страницы-реферера, то есть с той, с которой происходит перенаправление. Таким образом, сессия не будет разрываться до тех пор, пока на иное не укажет сервер.
Ошибки со стороны клиента: 4ХХ
Коды состояния сервера четвертой категории нужны для определения клиентских ошибок, например в том случае, когда обработанный запрос не может быть принят по вине посетителя (отказ браузера или блокировка фаерволла).
Неверный запрос (Bad Request): 400
Код применяется, когда клиент неверно задал запрос, к примеру, допустил синтаксическую ошибку, а сервер не в состоянии её обработать.
Сообщения 400 Bad Request используется при серьезных нарушениях в тексте, когда система вовсе не может разобрать, что именно имеется в виду, также может быть использовано, когда страница, соответствующая запросу, переехала, но функция перенаправления не была использована.
Не авторизирован (Unauthorized): 401
Часто используется на сервисах, предоставляющих платный доступ, или форумах, просмотр некоторых тем которых доступен только для авторизированных пользователей.
При этом посетитель будет получать сообщение 401 Unauthorized с предложением пройти регистрацию.
Также код может быть использован при неверном или частичном прохождении процесса идентификации или регистрации.
Например, когда сервер разрешает доступ с логином и паролем, но пока они не подтверждены администратором, не пускает на некоторые страницы сайта.
Необходима оплата (Payment Required): 402
Предполагалось использование этого кода для отказов неоплаченного доступа, например, с последующим перенаправлением на страницу системы электронных платежей.
На текущий момент код практически не нашел применений, однако некоторые известные сервисы всё же используют его, хоть и не совсем по назначению.
Всемирно известное хранилище видео данных YouTube использует код 402, когда активность пользовательских запросов вызывает подозрение.
В этом случае, вызывается опция, активирующая скрипт введения каптчи (CAPTHA).
Запрещен (Forbidden): 403
Код применяется при принятии и обработке процесса для ответа пользователю отказом, в праве на просмотр страницы.
Как правило, применяется для того, чтобы закрыть ресурсы администратора или другие сведения, которые имеются, но не должны просматриваться клиентскими браузерами ни при каких обстоятельствах.
Не найден (Not Found): 404
Такая проблема широко распространена. Она несет в себе информацию о прекращении существования страницы.
При этом запрос со ссылкой остался и будет существовать, пока он автоматически не удалится, или вместо него не появится другая страница, возможно не релевантная.
Как создать на сайте 404 страницу и перенаправлять не нее посетителей читайте в этой статье.
Если сайт действительно был удален, или его адрес изменился, как правило, используют функцию редиректа.
Однако если речь идет о домене, который перепродается регистрационной компанией в случае отсутствия оплаты, то она автоматически устанавливает перенаправление на нужные ресурсы до продажи домена.
Способ не приемлем (Method Not Allowed): 405
Ошибка используется при неправильном запросе к определенному обработчику, например, когда функция скрипта позволяет оперировать только переменной GET, а запрос от клиента приходит с командой POST.
Так как исполнение невозможно, то сервер сообщает об этом при помощи кода 405.
Не допустимый (Not Acceptable): 406
Используется, когда браузер клиента не способен отобразить ту или иную часть страницы при неправильных настройках, например, когда параметрами отображения браузера запрещена обработка запросов, желающих хранить данные на ПК пользователя.
Клиентская программа-обозреватель не дает принимать информацию от сервера, но при этом передает запрос на отображение.
Неверная аутентификация на прокси-сервере (Proxy Authentication Required): 407
Код немного подобен 401, однако тут речь идет не о правильности сервера и его использовании, а именно об авторизации на прокси посредством логина и пароля.
Сообщение работает, когда невозможно передать данные из-за неверных параметров прокси-сервера.
Время ожидания запроса истекло (Request Timeout): 408
Данный код применяется, если сервер не получает от клиента ожидаемый запрос. Похожая ошибка выдается при проблемах в соединении, когда отправленные пакеты не достигают цели.
Со стороны клиента что угодно может блокировать пакеты, отправляющие запрос, начиная от вирусов и заканчивая проблемами с хостингом.
Проблема с обращением к серверу (Conflict): 409
Сообщение выдается сервером при попытке замены более новой копии файла или архива на более старую или неактуальную.
Также конфликт может быть вызван использованием разных конфигурационных файлов баз данных.
Запрос уже ушел (Gone): 410
Означает, что ранее ссылка была доступна по данному запросу, и он обрабатывался, однако теперь удален или перемещен, а серверу неизвестно, что именно с ним произошло.
Длина запроса (Length Required): 411
Такая проблема сервера возникает при клиентском запросе, который содержит длину отображаемого контента, тогда как при обработке это не может соответствовать действительности.
Условие нарушено (Precondition Failed): 412
Код применяется при нарушении одного из условий, необходимых для выполнения требования. При этом он может быть обработан частично, если условие не задано как критическое.
Сервер может сообщать, что такой запрос не подходит именно этому ответу.
Длина запроса слишком велика (Request Entity Too Large): 413
Используется при понятном серверу требовании, однако в параметрах указано ограничение на обрабатываемую информацию.
Следует уменьшить размер фразы для поиска нужного контента.
Длина ссылки запроса слишком велика (Request-URL Too Long): 414
Необходим при использовании слишком длинных ссылок при преобразовании и формировании сложных запросов.
Если сервер не способен их обработать, он выдает сообщение 414.
Неподдерживаемый формат (Unsupported Media-Type): 415
Используется при попытке пользователя отправить запрос на обработку файла, формат которого не поддерживается или запрещен к открытию данному типу учетных записей.
Например, когда открытие jpg картинки доступно только для администратора или зарегистрированного посетителя.
Недоступность диапазона (Requested Range Not Satisfiable): 416
Нужен серверу для отказа в запросе к той части, которая имеет размер. Используется для выявления несоответствий при проверке файлов конфигураций.
Если добавлены лишние строки, размер будет изменен, и ошибка 416 сообщит администратору об этом.
Ожидание прервано (Expectation Failed): 417
Сообщение говорит, что в клиентском запросе возникла ошибка, и он не может быть нормально обработан.
Процесс не сможет запуститься и может остаться как зависшая в ожидании сессия, поскольку неверно заполнено поле Expect.
Я чайник (I’m a teapot): 418
17 лет назад это сообщение было разработано ради смеха и использовалось как шутка в день смеха 1 апреля. Современные http обработчики не воспринимают его.
Невероятный объект (Unprocessable Entity): 422
Сервер таким образом сообщает, что он принял запрос, прочитал и понял его, но какая-то ошибка мешает правильно его обработать.
Наиболее вероятно возникновение семантической ошибки в записи, что не дает завершить действие, хоть и понятно, что нужно выполнить.
Заперто (Locked): 423
Метод, которым вы обращаетесь к серверу клиентским запросом, запрещен и системным администратором.
Как правило, такой вид блокировок употребляется для того, чтобы посетитель прошел регистрацию и верификацию на сервере.
Плохая зависимость (Failed Dependency): 424
Запрос от посетителя был прерван из-за невыполнения других условий для совершения действия.
Может использоваться при отказе от подтверждения действия, например, при отрицательном ответе на вопрос: есть ли вам «18», процесс регистрации не сможет быть завершен и сервер сообщит об этом.
Неупорядоченный каталог (Unordered Collection): 425
Используется при попытке доступа к данным, которые были переведены в статус «черновик», то есть находящимся в процессе редактирования или внесения изменений.
Ссылка в это время остается целой, однако пользовательский интерфейс отключен.
Обязательное обновление запроса (Upgrade Required): 426
Указывает клиенту, что протокол его браузера безнадежно устарел и сообщает о невозможности обработать такой запрос.
Необходимо использовать более новую версию или другой обозреватель, в котором поддержка включена.
Условия предварительного воздействия (Precondition Required): 428
Указывает на то, что без выполнения определенных условий невозможно завершение и обработка операции. Чаще всего используется как предупреждение в случае, когда идет одновременное редактирование ресурса или его части, и запрос на его просмотр.
В это время существуют две версии процесса: та, что запущена и обрабатывается на данный момент, находится в кэше и постоянно обновляется, в то же время другая – это первоначальная копия ресурса.
В результате серверу непонятно, какой из ответов возвращать, поэтому происходит конфликт.
Слишком много обращений (Too Many Requests): 429
Используется, когда клиент превышает количество указанных запросов, к примеру, пытаясь подобрать пароль или неправильно ввести каптчу.
Также код необходим для сообщений о попытке взлома сервера методом dDOS (множественные запросы или крупные пакеты, забивающие трафик к серверу или нагружающие его процессорную мощность) или брутфорсом (подбор паролей, приемлем при взломах почтового ящика).
Заголовок поля очень длинный (Request Header Fields Too Large): 431
Код ошибки говорит о том, что клиент использует слишком большую длину запроса, и при его уменьшении обработка возможна.
Нет ответа (No Response): 444
Применяется как сообщение о том, что посетителю на запрос было отказано в получении ответа.
В этом случае сервер отказался от обработки, подозревая, что запрос вызван вирусным ПО или хакерской атакой.
Готов после… Retry With (Microsoft): 449
Код взят в употребление компанией Майкрософт как ответ пользователю на неверный запрос или его части.
Он говорит о том, что изменив характеристики и повторив запрос правильно, клиент получит обработку или исполнение указанного действия.
Заблокировано при помощи родительского контроля (Blocked by Windows Parental Controls (Microsoft)): 450
Используется как сообщение от ресурсов, которые были заблокированы на персональных компьютерах при помощи программного обеспечения.
Чаще всего необходим для сообщения о том, что запрос выходит за рамки разрешенные параметрами родительского контроля, осуществляемым при помощи штатных средств Microsoft Windows.
Недоступно по причинам нелегальности (Unavailable For Legal Reasons): 451
Сообщение крайне популярно на пиратских сайтах, распространяющих взломанный контент, а также при нарушениях цензуры или моральной этики.
Часто используется уже после блокировки правительством или такими органами, как Росскомнадзор.
Ошибки со стороны сервера: 5ХХ
Коды состояния HTTP 5й серии призваны указывать на проблемы со стороны обработки сервером. Они используются в то время, когда запрос, отправленный пользователем, правильно сформирован и не содержит лишних и неверных данных.
Однако сервер не в состоянии на него ответить. Как правило, это сопровождается сообщением, выводимым в обозревателе клиента, благодаря которому посетитель может сориентироваться, почему ресурс ничего не ответил.
Ошибка внутри сервера (Internal Server Error): 500
Сообщение говорит только о том, что внутри программного обеспечения сервера произошла ошибка. Конкретной проблемы данный код не определяет и выяснить из-за чего произошел сбой достаточно тяжело.
Вероятнее всего произошло обращение по несуществующей ссылке или запрос на объект, которого никогда не было.
Функция не реализована (Not Implemented): 501
Ошибка вызвана непринятием сервера вашего запроса. Она возникает потому что некоторые из протоколов не реализованы или специально запрещены, обработка не может быть завершена нормально.
Неверный шлюз (Bad Gateway): 502
Данный код сообщения выводится, когда сервер является промежуточным звеном, и дальнейший доступ через него запрещен или невозможен.
Если шлюз или прокси сервер отказывает в доступе по причинам несогласованности протоколов запроса, то такое сообщение ошибки сервера выводится на экран пользователя.
Сервер недоступен (Server Unavailable): 503
Сервер может отказать посетителю в обработке запроса или процесса по нескольким причинам.
Это может быть техническая неисправность, проблема с сервисом хостинга или перегрузка количеством других запросов, обрабатываемых в это время.
Время ожидания шлюза истекло (Gateway Timeout): 504
Код используется, когда промежуточный сервер между двумя другими не дает ответа, блокируя пакеты и тем самым превышая время, отведенное на запрос.
Чаще всего встречается в случаях, когда сервер сам является шлюзом или подключается к нему для передачи информационных данных.
Версия протокола не может быть использована (HTTP Version Not Supported): 505
Необходима в тех случаях, когда в программе-обозревателе не соответствует версия HTTP указанная сервером. Проблема возникает либо при использовании очень старых браузеров или неправильно заданных запросов.
Как вариант – доступ предоставляется через защищенный протокол HTTPS, а клиент задает HTTP вручную или переходит по такой ссылке и наоборот.
Вариант не устраивает (Variant Also Negotiates): 506
Сервер может задействовать 506 ошибку, когда в результате сбоя значение обработки запроса указывает само на себя. Зачастую это свидетельствует о неверной настройке серверной части или маршрутизации.
Для хранения недостаточно места (Insufficient Storage): 507
Каждый запрос кешируется, а значит, требует определенного пространства на жестком диске сервера. Если он забит неверно настроенными логами или другим кешем, и места недостаточно, то ответ последует в виде ошибки 507.
Лимит пропускной способности исчерпан (Bandwidth Limit Exceeded): 509
Очень важное сообщение для тех, кто использует бесплатный вид хостинга. Остальные, даже дешевые варианты размещения, крайне редко ограничивают сайты в потреблении трафика.
Однако на всякий случай каждый веб-дизайнер популярной площадки должен знать об этой ошибке, которая говорит о том, что лимиты используемого трафика превышены.
Запрещен к распространению (Not Extended): 510
Если серверу не предоставлено достаточно данных о клиенте, он отказывает ему как неизвестному или неопознанному посетителю в предоставлении информации.
Это означает, что в запросе должно быть больше информации, или передаваемые пакеты идут через прокси сервер, который их фильтрует, в результате чего нужные данные не попадают по назначению.
Авторизация в сети не пройдена (Network Authentication Required): 511
Код популярен и часто используется в общедоступных сетях. Может выдаваться по окончании выделенного клиенту времени (часто применяется в кафе и фастфудах).
Также используется у некоторых провайдеров для веб идентификации или в рекламных целях (доступ выдается ненадолго и бесплатно, чтобы удивить клиента скоростью и заманить его подключиться на постоянной основе).
Заключение
Оперируя сообщениями сервера, администратор всегда может увидеть, в чем причина возникновения неполадок или снижения посещаемости ресурса.
Также он сможет посмотреть, кто и как перенаправляется на необходимые ресурсы, наблюдать за поведением пользователей на страницах сайта, проследить за обменом данными между клиентами и сервером.
Коды ошибок сервера, их исправление
Что такое коды ответов и ошибок сервера?
Данные коды (их еще называют http-статусы) посылаются веб-сервером хостинга в ответ на запрос пользователя, который идет через его браузер. Говоря проще, пользователь хочет зайти на определенный сайт и клацает ссылку в браузере. Браузер посылает запрос на сервер хостинг-провайдера, а тот ему в ответ посылает код, исходя из которого браузер делает определенное действие (показывает сайт\показывает ошибку\показывает не то, что запросил пользователь).
Важно! Нельзя считать все ответы сервера ошибками, далее показано о чем они сообщают:
- Коды 100-199 — Запрос браузера принят, и обрабатывается
- Коды 200-299 — Запрос обработан, и браузеру отправили то, что он хотел
- Коды 300-399 — Сервер отправит пользователю не то, что он хотел
- Коды 400-499 — Ошибка на стороне пользователя
- Коды 500-599 — Ошибка на стороне сервера
Коды 100-199
100 Continue
Сообщает о том, что сервер принял первую часть запроса, и можно продолжать посылать остальные части.
101 Switching Protocols
Сервер (по требованию браузера) переключил протоколы. Это задание передается серверу в заголовке Upgrade.
Коды 200-299
200 Ok
Сервер обработал запрос браузера (пользователя) и передал ему то, что он хотел. А пользователь должен увидеть сайт или файл, который запрашивал.
201 Created
Код сообщает, что сервером создан новый идентификатор URI. В ответе сервера (заголовок Location) можно найти место куда именно были помещены созданные данные.
202 Accepted
Сервер принял запрос, но будет обрабатывать его позже. К тому же, в конечном счете нельзя быть уверенным на 100%, что сервер обработает Ваш запрос. Ищите детальную информацию о причинах в сообщении, которое приходит вместе с кодом ошибки.
203 Non-Authoritative Information
Сервер передал запрашиваемую информацию, но сообщает о том, что взял ее на другом сервере или же из собственной копии.
204 No Content
Этот код показывает браузеру, что его запрос принят, но ответ на него пустой, и браузеру не нужно ничего делать. Чаще всего это происходит, когда пользователь клацает по пустому месту страницы или
400 | Неверный запрос | Запрос не может быть понят сервером из-за некорректного синтаксиса (получен код 400 Bad Request). |
401 | Неавторизованный запрос | Для доступа к документу необходимо вводить пароль или быть зарегистрированным пользователем (получен код 401 Unauthorized). |
402 | Необходима оплата за запрос | Внутренняя ошибка или ошибка конфигурации сервера (получен код 402 Payment Required). |
403 | Доступ к ресурсу запрещен | Доступ к документу запрещен (получен код 403 Forbidden). Если вы хотите, чтобы страница индексировалась, необходимо разрешить доступ к ней. |
404 | Ресурс не найден | Документ не существует (получен код 404 Not Found). Если вы удалили какой-то раздел сайта, можно с помощью robots.txt запретить роботу обращаться к нему. Если такой страницы на сайте никогда не существовало, игнорируйте эту ошибку, возможно, кто-то поставил некорректную ссылку на ваш сайт. |
405 | Недопустимый метод | Метод, определенный в строке запроса (Request-Line), не дозволено применять для указанного ресурса, поэтому робот не смог его проиндексировать (получен код 405 Method Not Allowed). |
406 | Неприемлемый запрос | Нужный документ существует, но не в том формате (язык или кодировка не поддерживаются роботом). Получен код 406 Not Acceptable. |
407 | Требуется идентификация прокси, файервола | Необходима регистрация на прокси-сервере (получен код 407 Proxy Authentication Required). |
408 | Время запроса истекло | Сайт не передал полный запрос в течение установленного времени и робот разорвал соединение (получен код 408 Request Timeout). |
409 | Конфликт | Запрос конфликтует с другим запросом или с конфигурацией сервера (получен код 409 Conflict). |
410 | Ресурс недоступен | Затребованный ресурс был окончательно удален с сайта (получен код 410 Gone). |
411 | Необходимо указать длину | Сервер отказывается принимать запрос без определенного заголовка Content-Length (получен код 411 Length Required). Поправьте заголовки на своем сервере — тогда в следующий раз робот сможет проиндексировать страницу. |
412 | Сбой при обработке предварительного условия | При проверке на сервере одного или более полей заголовка запроса обнаружено несоответствие (сбой или ошибка при обработке предварительного условия). Получен код 412 Precondition Failed. |
413 | Тело запроса превышает допустимый размер | Сервер отказывается обрабатывать запрос потому, что размер запроса больше того, что может обработать сервер (получен код 413 Request Entity Too Large). |
414 | Недопустимая длина URI запроса | Сервер отказывается обслуживать запрос, потому что запрашиваемый роботом URI (Request-URI) длиннее, чем сервер может интерпретировать (получен код 414 Request-URI Too Long). |
415 | Неподдерживаемый MIME тип | Сервер отказывается обрабатывать запрос, потому что тело запроса имеет неподдерживаемый формат (получен код 415 Unsupported Media Type). |
416 | Диапазон не может быть обработан | Сервер отказывается обрабатывать запрос, потому что значение поля Range в заголовке запроса указывает на недопустимый диапазон байтов (получен код 416 Requested Range Not Satisfiable). |
417 | Сбой при ожидании | Сервер отказывается обрабатывать запрос, потому что значение поля Expect в заголовке запроса не соответствует ожиданиям (получен код 417 Expectation Failed). |
422 | Необрабатываемый элемент | Сервер не в состоянии обработать один (или более) элемент запроса (получен код 422 Unprocessable Entity). |
423 | Заблокировано | Сервер отказывается обработать запрос, так как один из требуемых ресурсов заблокирован (получен код 423 Locked). |
424 | Неверная зависимость | Сервер отказывается обработать запрос, так как один из зависимых ресурсов заблокирован (получен код 424 Failed Dependency). |
426 | Требуется обновление | Сервер запросил апгрейд соединения до SSL, но SSL не поддерживается клиентом (получен код 426 Upgrade Required). |
Код 200 — это… Что такое Код 200?
301
Moved Permanently (русск. Перемещёно окончательно)
Появился в HTTP/1.0.
Запрошенный документ был окончательно перенесен на новый URI, указанный в поле Location заголовка. При запросах не методом HEAD сервер должен передать в теле сообщения гипертекстовое пояснение. При использовании всех методов, кроме GET и POST, предварительно следует уведомить пользователя об изменении ссылки. Не стоит забывать, что некоторые клиенты ошибочно меняют метод POST на GET после перехода на другой адрес.
Ответ может кэшироваться.
Если код состояния 301 получен после запроса GET или HEAD, то клиент должен запросить пользователя перед адресацией.
302
Found (русск. Найдено)
Введено в HTTP/1.0.
Запрошенный документ временно доступен по другому URI, указанному в заголовке в поле Location. При всех методах кроме HEAD сервер должен передать в теле гипертекстовое пояснение. При использовании всех отличных от GET и POST методов предварительно следует уведомить пользователя об изменении URI. При обращении к следующему ресурсу метод POST на GET менять следует как это делают некоторые клиенты.
Код является примером того, как практика не соответствует стандартам. Спецификация HTTP/1.0 требовала от клиента осуществления временной переадресации («Moved temporarly» в оригинале), но популярные браузеры использовали 303 See other. Поэтому спецификация HTTP/1.1 (RFC 2068) добавила коды состояний 303 и 307, пытаясь избавиться от неоднозначности. Тем не менее, большинство веб-приложений по прежнему используют код 302, как если бы он был кодом 303.
303
See Other (русск. Смотреть другое)
Введено в HTTP/1.1.
Документ по запрошенному URI нужно запросить по адресу в поле Location заголовка с использованием метода GET несмотря даже на то, что первый запрашивался методом POST. Если используется не метод HEAD, то серверу следует включить в тело сообщения короткое гипертекстовое описание.
304
Not Modified (русск. Не изменено)
Появился в HTTP/1.0.
Сервер возвращает такой код, если клиент запросил документ методом GET, использовал заголовок If-Modified-Since или If-None-Match и документ не изменился с указанного момента. При этом сообщение сервера не должно содержать тела.
305
Use Proxy (русск. Использовать прокси)
Введено в HTTP/1.1.
Запрос к запрашиваемому ресурсу должен осуществляться через прокси-сервер, URI которого указан в поле Location заголовка. Данный код ответа могут использовать только родные HTTP-сервера (не прокси).
306
Упомянуто в RFC 2616 (обновление HTTP/1.1).
Использовалось раньше. В настоящий момент зарезервировано.
307
Temporary Redirect (русск. Временное перенаправление) Введено в RFC 2616 (обновление HTTP/1.1).
Запрашиваемый ресурс короткое время доступен только по другому URI (указывается в поле Location заголовка). Если был послан не метод HEAD, то серверу следует включить в тело сообщения короткое гипертекстовое описание. При использовании всех методов кроме GET и POST предварительно следует уведомить пользователя о временном изменении ссылки.
4xx: Client Error
Класс кодов 4xx предназначен для указания ошибок со стороны клиента. При использовании всех методов, кроме HEAD, сервер должен вернуть в теле сообщения гипертекстовое пояснение для пользователя.
Для облегчения запоминания значений кодов существуют приёмы иллюстративной мнемотехники (например, для диапазона 400 по 417 [1])
400
Bad Request (русск. Плохой запрос)
Появился в HTTP/1.0.
Запрос не понят сервером из-за наличия синтаксической ошибки. Клиенту следует повторно обратиться к ресурсу с изменённым запросом.
401
Unauthorized (русск. Неавторизован)
Появился в HTTP/1.0.
Запрос требует идентификации пользователя. Клиент должен запросить имя и пароль у пользователя и передать их в записи WWW-Authenticate заголовка в следующем запросе. В случае ввода ошибочных данных сервер снова вернёт этот же статус.
402
Payment Required (русск. Необходима оплата )
Зарезервирован начиная с HTTP/1.1.
Предполагается использовать в будущем. В настоящий момент не используется.
403
Сервер вернул ошибку 403 при попытке просмотра директории cgi-bin, доступ к которой был запрещён
Forbidden (русск. Запрещено)
Появился в HTTP/1.0.
Сервер понял запрос, но он отказывается его выполнять из-за каких-то ограничений в доступе. Идентификация через протокол HTTP здесь не поможет. Скорее всего, на сервере нужно провести аутентификацию другим способом, сделать запрос с определёнными параметрами или удовлетворить каким-либо условиям.
Сообщение 403 может возвращаться, если хозяин сайта по каким-то соображениям решил закрыть от пользователей часть информации. Кроме того, если веб-сервер не имеет прав доступа к запрошенному документу, он также вернёт код 403. Простая ситуация, когда страница может на самом деле не существовать, но сервер выдаст ошибку 403 (запрещено), а не 404 (не найдено): страница находится в директории foo, доступ к которой был запрещён веб-серверу — таким образом веб-сервер не может «знать», есть в этой директории такая страница, или нет.
Очень часто запрещается просмотр всех или некоторых директорий без главной страницы — в этом случае пользователю вывелся бы список файлов и каталогов в этой директории, а так ему возвращается ошибка 403.
404
Попытка запросить документ /fgsfds в Википедии приводит к ошибке 404. Тем не менее, программное обеспечение Википедии перенаправляет нас на соответствующую статью, которая могла бы существовать.
Not Found (русск. Не найдено)
Появился в HTTP/1.0.
Сервер понял запрос, но не нашёл соответствующего ресурса по указанному 410 вместо этого. Этот код может использоваться вместо 403, если требуется тщательно скрыть от посторонних глаз определённые ресурсы.
Ссылки
405
Method Not Allowed (русск. Метод не поддерживается)
Появился в HTTP/1.1.
Указанный клиентом метод нельзя применить к ресурсу. Сервер также должен передать в заголовке ответа поле Allow со списком доступных методов.
406
Not Acceptable (русск. Не приемлемо)
Появился в HTTP/1.1.
Запрошенный URI не может удовлетворить переданным в заголовке характеристикам. Если метод был не HEAD, то сервер должен вернуть список допустимых характеристик для данного ресурса.
407
Proxy Authentication Required (русск. Необходима авторизация прокси)
Появился в HTTP/1.1.
Ответ аналогичен коду 401 за исключением того, что аутентификация производится для прокси-сервера. Механизм аналогичен идентификации на обычном сервере.
408
Request Timeout (русск. Время ожидания истекло)
Появился в HTTP/1.1,
Время ожидания сервером передачи от клиента истекло. Клиент может повторить аналогичный предыдущему запрос в любое время.
409
Conflict (русск. Конфликт)
Появился в HTTP/1.1.
Запрос не может выполнен из-за конфликтного обращения к ресурсу. Такое возможно, например, когда два клиента пытаются изменить ресурс с помощью метода PUT.
410
Gone (русск. Удалён)
Появился в HTTP/1.1.
Такой ответ сервер посылает, когда ресурс раньше был по указанному URI, но был удалён и теперь недоступен. Серверу в этом случае не известно и местоположение альтернативного документа (например, копии). Если у сервера есть подозрение, что документ в ближайшее время может быть восстановлен, то лучше клиенту передать код 404.
411
Length Required (русск. Необходима длина)
Появился в HTTP/1.1.
Для указанного ресурса клиент должен указать Content-Length в заголовке запроса. Без указания этого поля не стоит делать повторную попытку запроса к серверу по данному URI.
412
Precondition Failed (русск. Условие «ложно»)
Появился в HTTP/1.1.
Возвращается, если ни одно из условных полей заголовка запроса не было выполнено.
413
Request Entity Too Large (русск. Запрашиваемые данные слишком большие)
Появился в HTTP/1.1.
Возвращается если сервер по каким-то причинам не может передать запрашиваемый объём информации. Если проблема временная, то сервер может в ответе указать в поле Retry-After время, по истечении которого можно повторить аналогичный запрос.
414
Request-URI Too Long (русск. Запрашиваемый URI слишком длинный)
Появился в HTTP/1.1.
Сервер не может обработать запрос из-за слишком длинного указанного URI. Такую ошибку можно спровоцировать, например, когда клиент пытается передать длинные параметры через метод GET, а не POST.
415
Unsupported Media Type (русск. Неподдерживаемый тип данных)
Появился в HTTP/1.1.
По каким-то причинам сервер отказывается работать с указанным типом данных при данном методе.
416
Requested Range Not Satisfiable (русск. Запрашиваемый диапазон не достижим)
Введено в RFC 2616 (обновление HTTP/1.1).
В поле Range заголовка запроса был указан диапазон за пределами ресурса и отсутствует поле If-Range. Если клиент передал байтовый диапазон, то сервер может вернуть реальный размер в поле Content-Range заголовка. Данный ответ не следует использовать при передаче типа multipart/byteranges.
417
Expectation Failed (русск. Ожидаемое ошибочно)
Введено в RFC 2616 (обновление HTTP/1.1).
По каким-то причинам сервер не может удовлетворить значению поля Expect заголовка запроса.
422
Unprocessable Entity (русск. Необрабатываемый экзмепляр)
Введено в XML-документ имеет верный синтаксис, но имеется какая-то логическая ошибка из-за которой невозможно произвести операцию над ресурсом.
423
Locked (русск. Заблокировано)
Введено в
424
Failed Dependency (русск. Невыполненная зависимость)
Введено в 424.
426
Upgrade Required (русск. Необходимо обновление)
Введено в RFC 2817 для возможности перехода к
Сервер указывает клиенту на необходимость обновить протокол. Заголовок ответа должен содержать правильно сформированные поля Upgrade и Connection.
5xx: Server Error
Коды 5xx выделены под случаи неудачного выполнения операции по вине сервера. Для всех ситуаций, кроме использования метода HEAD, сервер должен включать в тело сообщения объяснение, которое клиент отобразит пользователю.
500
Internal Server Error (русск. Внутренняя ошибка сервера)
Появился в HTTP/1.0.
Любая внутренняя ошибка сервера, которая не входит в рамки остальных ошибок класса 5xx.
501
Not Implemented (русск. Не реализовано)
Появился в HTTP/1.0.
Сервер не поддерживает возможностей, необходимых для обработки запроса. Типичный ответ для случаев, когда сервер не понимает указанный в запросе метод.
502
Bad Gateway (русск. Плохой шлюз)
Появился в HTTP/1.0.
Сервер в роли шлюза или прокси получил сообщение о неудачном выполнении промежуточной операции.
503
Service Unavailable (русск. Сервис недоступен)
Появился в HTTP/1.0.
Сервер временно не имеет возможности обрабатывать запросы по техническим причинам (обслуживание, перегрузка и прочее). В поле Retry-After заголовка сервер может указать время, через которое клиенту рекомендуется повторить запрос. Хотя во время перегрузки очевидным является сразу разрывать соединение, эффективней может оказаться установка большого значения поля Retry-After для уменьшения частоты избыточных запросов.
504
Gateway Timeout (русск. Шлюз не отвечает)
Появился в HTTP/1.1.
Сервер в роли шлюза или прокси не дождался ответа от вышестоящего сервера для завершения текущего запроса.
505
HTTP Version Not Supported (русск. Версия HTTP не поддерживается)
Появился в HTTP/1.1.
Сервер не поддерживает или отказывается поддерживать указанную в запросе версию протокола HTTP.
506
Variant Also Negotiates (русск. Вариант тоже согласован)
Экспериментальное. Введено в RFC 2295 для дополнения протокола HTTP технологией Transparent Content Negotiation.
В результате ошибочной конфигурации выбранный вариант указывает сам на себя из-за чего процесс связывания прерывается.
507
Insufficient Storage (русск. Закончилось место)
Введено в
510
Not Extended (русск. Не расширено)
Введено в RFC 2774 для дополнения протокола HTTP поддержкой расширений.
На сервере отсутствует расширение, которое планирует использовать клиент. Сервер может дополнительно передать информацию о доступных ему расширениях.
Примечания
См. также
Ссылки
Код ответа сервера: проверка и расшифровка
Поисковые боты перед скачиванием (обходом) страницы смотрят на код ответа сервера, который является определяющим для дальнейших действий. Точное знание какие коды отдают страницы вашего сайта — один из первых и основных шагов при старте работ над продвижением ресурса.
Что собой представляют и что означают коды ответов сервера
Код ответа сервера — это целое трехзначное число, выдаваемое сервером в ответ на вводимый запрос. Исходя из этого числа происходит дальнейшая корректировка и обработка страницы. Первая цифра указывает на класс состояния , после идет пояснение — инструкция к дальнейшим действиям.
Класс состояния
В настоящее время выделено пять классов кодов состояния:
- 1** Informational — коды информации, отвечающие за передачу данных. Это так называемые «информационные коды», которые уведомляют о принятии запроса и его обработке.
- 2** Success — код успешной обработки запроса сервером.
- 3** Redirection — запрос перенаправляется на другой адрес.
- 4** Client Error — запрос имеет плохой синтаксис или не может быть выполнен.
- 5** Server Error — ошибка, связанная с самим сервером и не зависящая от действий пользователя. Если сервер не может выполнить действие, он выдает ошибку 5** и указывает ее причину.
Наиболее распространенные ответы сервера
200 ОК
Один из важнейших кодов, сигнализирующий об успешном выполнении запроса в полном объеме. Пользователь получит полный объем информации, которая будет доступна для ознакомления. Именно данный код должна отдавать каждая страница вашего сайта.
301 Moved Permanently
Пользователь уведомляется, что искомая страница перемещена по другому адресу на постоянной основе. Если у искомой страницы, которую вы уже находили ранее, поменялось «место жительства», то для сохранения траффика и «веса» ссылки важно настроить и перенаправить код 301, после чего браузер «соединит» два адреса.
302 Found
Страница временно перемещена на другой адрес, при этом удалять старый адрес из индекса не следует. Ссылочный «вес» остается прежним.
304 Not Modified
Весьма важная ошибка в свете анализа нагрузок на сервер, а также передаваемой им информации. Пользователь получит ошибку 304 в том случае, если в HTTP-заголовке время последнего обновления (Last-Modified) более позднее, нежели в запросе с заголовком If-Modified-Since (иными словами, если страница не подвергалась изменениям после указанной даты). Документ повторно не загружается, так как он не изменился, поисковые роботы получают http-заголовки и обрабатывают страницу далее.
403 Forbidden
Ошибка отказа в доступе пользователю к конкретному типу страницы или документа. Код 403 может появится при попытке входа с запрещенных IP-адресов либо при попытке открытия системного файла *.htaccess. Также могут встретиться ошибки 401 и 407 при проблемах с HTTP-аутентификацией.
404 Not Found
Знакомый каждому пользователю «ненавистный код» ненайденной страницы. Сигнализирует об отсутствии документа или страницы по заданному URL. Код отдается при попытке попадания на несуществующие ссылки и документы. Если вам требуется сообщить об удалении страницы по запрашиваемой ссылке, применяйте код 410.
Обратите внимание, что страница 404 File Not Found не обязательно выдает код 404. Если не обратить на это внимание, ранжирование сайта может снизиться. Речь идет о страницах с сообщением «Soft 404», возникающих при коде ответа сервера, отличного от 404 и 410. Сюда могут относится пустые страницы без содержимого с кодом 200. В обязательном порядке вебмастер должен найти их и настроить ошибку 404.
410 Gone
Код, указывающий на окончательное и полное удаление страницы или документа, после чего они более недоступны ни в каком виде. Несмотря на некоторое сходство с кодом 404, обработка этих ошибок поисковиками несколько отличная.
При обработке страницы с индексом 404, робот поисковик не отметит ее как окончательно удаленную. При повторном запросе он снова может к ней обратиться. Код 410 «обрубает концы» навсегда – робот отмечает полное удаление информации и более не будет обращаться к этому адресу при повторных запросах.
Часто возникающий код в последнее время. Ошибка 451 свидетельствует о том, что доступ к странице по данному адресу закрыт из-за запрета на государственном уровне. Также могут быть иные причины (нарушения авторских прав, например). Код 451 является уточнением кода 403.
500 Internal Server Error
«Внутренняя ошибка сервера», не описанная в списке прочих ошибок класса. Обычно возникает в тех случаях, когда сервер не может выполнить запрос из-за проблем в настройках файла конфигурации либо по другим причинам.
Технические проблемы, которые не позволяют серверу обрабатывать запросы пользователей. Ошибка 503 встречается при перегрузках серверов большим количеством запросов одновременно.
504 Gateway Timeout
Нет ответа от шлюза. Код появляется при отсутствии ответа от сервера, работающего в качестве прокси.
Как определить коды ответа на сайте
Например, если вы пользуетесь браузером Google Chrome, можно нажать F12 и зайти во вкладку Network. После того, как панель откроется, следует обновить страницу. Для прочих поисковиков можно воспользоваться расширениями (Live HTTP Headers, например), которые предоставят вам информацию по каждой открываемой вами странице.
Существуют также способы массово проверить десятки страниц по списку URL. Для этого стоит воспользоваться Netpeak Spider, Netpeak Checker или Urlitor, которые анализируют до 150 запрашиваемых адресов.
Основные выводы
Коды ответа серверов входят в пять основных групп – классов состояния. Они указывают на различные этапы передачи и обработки информации и определяют «виновного» и причину при отсутствии данных. Абсолютно все страницы, которые должны быть в индексе поисковиков, в обязательном порядке обязаны выдавать код 200 OK.
При смене адреса страниц, уже бывших в выдаче роботами поисковиками, требуется перенастроить редирект (код 301) со старой URL-ссылки на обновленный адрес.
Если страница отсутствует и выдает код, отличающийся от 404 и 410, может возникнуть ошибка «Soft 404». Это возникает в случаях страниц с кодом 200 ОК, которые по каким-то причинам не наполнены контентом.
Помните, что правильное использование и распределение кодов серверных ответов дает возможность роботам поисковых систем значительно экономить время и ресурсы на обработку запросов и работу со страницами. Пользователю будут доступны только необходимые и важные данные, что очень важно для SEO-продвижения и оптимизации ресурсов.
Столкнулись с кодами ответа сервера из вышеприведенного списка на Вашем сайте? Или хотите их избежать? Закажите у нас seo-аудит и мы поможем Вам со ошибками на сайте.
Получить предложение!
Подпишись и следи за выходом новых статей в нашем монстрограмме.
HTTP коды состояния перенаправления: 300, 301, 302, 303, 304, 305, 306, 307
Привет, читатель блога ZametkiNaPolyah.ru! Продолжим знакомиться с протоколом HTTP в рубрике серверы и протоколы и ее разделе HTTP протокол. Данная публикация будет о HTTP кодах состояния перенаправления. К HTTP кодам перенаправления относятся следующие коды: 300, 301, 302, 303, 304, 305, 306, 307. Напомню, что коды перенаправления говорят клиенту о том, что для успешного завершения запроса необходимо выполнить какое-то действие. Обычно браузеры выполняют такие действия без вмешательства пользователя. В данной записи мы рассмотрим сперва все HTTP коды перенаправления, а затем рассмотрим каждый код в отдельности более подробно.
HTTP коды состояния перенаправления: 300, 301, 302, 303, 304, 305, 306, 307
Общая информации о HTTP кодах перенаправления
Содержание статьи:
Если вы хотите узнать всё про протокол HTTP, обратитесь к навигации по рубрике HTTP протокол. Да, эти коды состояния, как раз и есть тот самый Redirect 301 или склейка доменов, глупое выражение: Redirect 301 – склейка домена. Автор тоже этим грешил, автор каится и обещает исправиться. Все дело в том, что 301 – это всего лишь, код, который означает, что произошло перенаправление, а вот за склейку доменов отвечает HTTP сервер и его конфигурации, поэтому крайне неправильно говорить этот ваш редирект 301.
Мы немного отвлеклись, давайте перейдем к HTTP кодам состояния перенаправления, все HTTP коды перенаправления начинаются с тройки. Общей чертой HTTP кодов перенаправления является то, что все они сообщают браузеру о том, что для продолжения работы ему необходимо выполнить какие-либо дополнительные действия, обычно браузер выполняет эти действия не спрашивая пользователя.
Для удобства давайте сведем все HTTP коды состояния перенаправления в единую таблицу и дадим им краткое описание.
HTTP ответ | Описание кода состояния перенаправления |
300 Multiple Choices | HTTP код перенаправления 300: множественный выбор HTTP код состояния 300 говорит клиенту о том, что запрошенный ресурс имеет несколько представлений и клиент в праве выбрать одно из предлагаемых представлений. Действует ограничение в пять адресов максимум. |
301 Moved Permanently | HTTP код перенаправления 301: постоянно перемещен HTTP код состояния 301 говорит клиенту о том, что запрашиваемая страница была перенесена на новый адрес, обычно браузер автоматически переходит по новому адресу. |
302 Found | HTTP код перенаправления 302: временно перемещен HTTP код состояния 302 говорит клиенту о том, что запрашиваемый ресурс был временно перемещен на новый адрес. |
303 See Other | HTTP код перенаправления 303: смотри другой HTTP код состояния 303 говорит клиенту о том, что ответ на запрос может быть найден по другому URI (про URI в HTTP найдешь информацию здесь), новый запрос следует выполнять методом GET (про HTTP методы смотри здесь). |
304 Not Modified | HTTP код перенаправления 304: не модифицирован HTTP код состояния 304 говорит клиенту о том, что сервер выполнил условный GET запрос, но документ никак не изменился. |
305 Use Proxy | HTTP код перенаправления 305: используй прокси HTTP код состояния 304 говорит клиенту о том, что запрошенный URL должен быть доступен через прокси, который указан в поле заголовка Location. |
306 Unused | HTTP код перенаправления 306: зарезервировано Код состояния 306 использовался в прошлой версии HTTP протокола, на данный момент он не используется, но зарезервирован стандартом HTTP. |
307 Temporary Redirect | HTTP код перенаправления 307: временно перемещен HTTP код состояния 307 говорит клиенту о том, что запрашиваемая страница временно переехала на новый адрес |
Давайте более подробно поговорим про каждый из кодов состояний HTTP сервера класса перенаправления.
HTTP код состояния 300: множественный выбор. HTTP код состояния 301: постоянно перенесен. HTTP код состояния 302: временно перемещен.
HTTP код состояния 300 или код множественного выбора говорит о том, что клиент может выбрать несколько доступных представлений ресурса, но не более пяти. Каждое представление ресурса имеет свое уникальное месторасположения на сервере. Формат, в котором клиент будет получать HTTP объект определяется медиа типом данных (читай про типы данных в HTTP по этой ссылке), указанным в поле заголовка Content-Type. Иногда выбор выполняется автоматически браузером без участия пользователя, но стандарт HTTP протокола не дает никаких критериев, по которым должен происходить автоматический выбор, а так же не имеет никаких требований. Ответы HTTP сервера с кодом состояния 300 по умолчанию являются кэшируемыми, если в заголовках не указано иного.
HTTP код состояния 301 или код состояния постоянного переноса. Код состояния 301 сообщает браузеру о том, что для ресурса, к которому он обратился, назначен новый URI, и все обращения к этому ресурсу следует выполнять по новому URI, указанному в ответе HTTP сервера. Ответы сервера с кодом 301 являются кэшируемыми. В тех случаях, когда клиент использовал HTTP запрос с методом отличным от GET или HEAD, браузер спрашивает у пользователя, что делать дальше: переходить по новому URI или не надо.
HTTP код состояния 302 или код временного перемещения ресурса. Код состояния 302 говорит о том, что на данный момент ресурс временно доступен по другому URI и сообщает новый URI ресурса. Кэшируемость ответов сервера с кодом 302 зависит только от значений полей заголовка Cache-Control или Expires. В тех случаях, когда клиент использовал запрос с методом отличным от GET или HEAD, браузер спрашивает у пользователя, что делать дальше: переходить по новому URI или не надо.
HTTP код состояния 303: смотреть другой ресурс. HTTP код состояния 304: ресурс не модифицирован. HTTP код состояния 305: использовать прокси сервер. HTTP код состояния 307: временное перенаправление
HTTP код состояния 303 или код состояния смотреть другой ресурс. Если клиент получает ответ с кодом 303, то это означает, что ответ на его запрос может быть найден по другому URI и его можно запросить при помощи метода GET. Чаще всего ответы с кодом состояния 303 используются, чтобы вывести информацию из формы. Ответы сервера с кодом 303 не кэшируются.
HTTP код состояния 304 или код состояния ресурс не модифицирован. Клиент получает ответ от HTTP сервера с кодом 304 в том случае, когда посылался запрос с условным методом GET, но никаких изменений в документе не произошло. При этом HTTP сообщение от сервера не должно содержать тела. Ответ сервера всегда содержит следующие поля заголовков:
- Date;
- ETag или Content-Location;
- Expires, Cache-Control или
Ответы сервера с кодом 304 всегда завершаются пустой строкой после полей заголовка.
HTTP код состояния 305. Код состояния 305 говорит браузеру о том, что ему нужно обратиться к ресурсу, используя прокси-сервер. Прокси-сервер в сообщениях с кодом состояния 305 указывается в поле Location. При этом HTTP сервер ожидает, что клиент повторит запрос, но уже через прокси сервер и даже при необходимости пройдет аутентификацию на прокси сервере.
HTTP код состояния 306 использовался в старых версиях протокола HTTP, но теперь является просто зарезервированным.
HTTP код состояния 307 аналогичен коду состояния 302.
Настраивая HTTP сервер не забывайте про особенности HTTP соединения и помните, что код состояния — это параметр HTTP. Мы рассмотрели коды перенаправления HTTP, давайте перейдем к кодам ошибок клиента. В HTTP есть еще: информационные коды, успешные коды, коды ошибок клиента и коды ошибок сервера. А если тебе нужна информацию обо всех кодах состояния, обратись к справочнику HTTP кодов состояния, в котором есть полное описание всех кодов.