Код состояния HTTP (англ. HTTP status code) — часть первой строки ответа сервера при запросах по протоколу HTTP.
Он представляет собой целое трёхразрядное десятичное число. Первая цифра указывает на класс состояния. За кодом ответа обычно следует отделённая пробелом поясняющая фраза на английском языке, которая разъясняет человеку причину именно такого ответа. Примеры:
- 201 Created.
- 401 Unauthorized.
- 507 Insufficient Storage.
Клиент может не знать все коды состояния, но он обязан отреагировать в соответствии с классом кода. В настоящее время выделено пять классов кодов состояния.
Веб-сервер Internet Information Services в своих файлах журналов, кроме стандартных кодов состояния, использует подкоды, записывая их через точку после основного. При этом в ответах от сервера данный подкод не размещается — он нужен администратору сервера, чтобы тот мог более точно определять источники проблем.
Обзорный списокПравить
Ниже представлен обзорный список всех описанных в данной статье кодов ответа:
Диаграмма принятия веб-сервером решений на основе заголовков
Статистика по кодам ответа, сгенерированная анализатором логов Webalizer
Описание кодовПравить
В этот класс выделены коды, информирующие о процессе передачи. При работе через протокол версии 1.0 сообщения с такими кодами должны игнорироваться. В версии 1.1 клиент должен быть готов принять этот класс сообщений как обычный ответ, но серверу отправлять что-либо не нужно. Сами сообщения от сервера содержат только стартовую строку ответа и, если требуется, несколько специфичных для ответа полей заголовка. Прокси-серверы подобные сообщения должны отправлять дальше от сервера к клиенту.
- 100 Continue — сервер удовлетворён начальными сведениями о запросе, клиент может продолжать пересылать заголовки. Появился в HTTP/1.1.
- 101 Switching Protocols — сервер выполняет требование клиента и переключает протоколы в соответствии с указанием, данным в поле заголовка Upgrade. Сервер отправляет заголовок ответа Upgrade, указывая протокол, на который он переключился. Появился в HTTP/1.1.
- 102 Processing — запрос принят, но на его обработку понадобится длительное время. Используется сервером, чтобы клиент не разорвал соединение из-за превышения времени ожидания. Клиент при получении такого ответа должен сбросить таймер и дожидаться следующей команды в обычном режиме. Появился в WebDAV.
- 103 Early Hints — используется для раннего возврата части заголовков, когда заголовки полного ответа не могут быть быстро сформированы.
Сообщения данного класса информируют о случаях успешного принятия и обработки запроса клиента.
В зависимости от статуса сервер может ещё передать заголовки и тело сообщения.
- 200 OK — успешный запрос. Если клиентом были запрошены какие-либо данные, то они находятся в заголовке и/или теле сообщения. Появился в HTTP/1.0.
- 201 Created — в результате успешного выполнения запроса был создан новый ресурс. Сервер может указать адреса (их может быть несколько) созданного ресурса в теле ответа, при этом предпочтительный адрес указывается в заголовке Location. Серверу рекомендуется указывать в теле ответа характеристики созданного ресурса и его адреса, формат тела ответа определяется заголовком Content-Type. При обработке запроса новый ресурс должен быть создан до отправки ответа клиенту, иначе следует использовать ответ с кодом 202. Появился в HTTP/1.0.
- 202 Accepted — запрос был принят на обработку, но она не завершена. Клиенту не обязательно дожидаться окончательной передачи сообщения, так как может быть начат очень долгий процесс. Появился в HTTP/1.0.
- 203 Non-Authoritative Information — аналогично ответу 200, но в этом случае передаваемая информация была взята не из первичного источника (резервной копии, другого сервера и т. д.) и поэтому может быть неактуальной. Появился в HTTP/1.1.
- 204 No Content — сервер успешно обработал запрос, но в ответе были переданы только заголовки без тела сообщения. Клиент не должен обновлять содержимое документа, но может применить к нему полученные метаданные. Появился в HTTP/1.0.
- 205 Reset Content — сервер обязывает клиента сбросить введённые пользователем данные. Тела сообщения сервер при этом не передаёт и документ обновлять не обязательно. Появился в HTTP/1.1.
- 207 Multi-Status — сервер передаёт результаты выполнения сразу нескольких независимых операций. Они помещаются в само тело сообщения в виде XML-документа с объектом multistatus. Не рекомендуется размещать в этом объекте статусы из серии 1xx из-за бессмысленности и избыточности. Появился в WebDAV.
- 208 Already Reported — члены привязки DAV уже были перечислены в предыдущей части (multistatus) ответа и не включаются снова.
- 226 IM Used — заголовок A-IM от клиента был успешно принят и сервер возвращает содержимое с учётом указанных параметров. Введено в RFC 3229 для дополнения протокола HTTP поддержкой дельта-кодирования.
Коды этого класса сообщают клиенту, что для успешного выполнения операции необходимо сделать другой запрос, как правило, по другому URI. Из данного класса пять кодов 301, 302, 303, 305 и 307 относятся непосредственно к перенаправлениям. Адрес, по которому клиенту следует произвести запрос, сервер указывает в заголовке Location. При этом допускается использование фрагментов в целевом URI.
Поведение клиентов при различных перенаправлениях описано в таблице:
- 300 Multiple Choices — по указанному URI существует несколько вариантов предоставления ресурса по типу MIME, по языку или по другим характеристикам. Сервер передаёт с сообщением список альтернатив, давая возможность сделать выбор клиенту автоматически или пользователю. Появился в HTTP/1.0.
- 301 Moved Permanently — запрошенный документ был окончательно перенесен на новый URI, указанный в поле Location заголовка. Некоторые клиенты некорректно ведут себя при обработке данного кода. Появился в HTTP/1.0.
- 303 See Other — документ по запрошенному URI нужно запросить по адресу в поле Location заголовка с использованием метода GET несмотря даже на то, что первый запрашивался иным методом. Этот код был введён вместе с кодом 307 для избежания неоднозначности, чтобы сервер был уверен, что следующий ресурс будет запрошен методом GET. Например, на веб-странице есть поле ввода текста для быстрого перехода и поиска. После ввода данных браузер делает запрос методом POST, включая в тело сообщения введённый текст. Если обнаружен документ с введённым названием, то сервер отвечает кодом 303, указав в заголовке Location его постоянный адрес. Тогда браузер гарантировано его запросит методом GET для получения содержимого. В противном случае сервер просто вернёт клиенту страницу с результатами поиска. Введено в HTTP/1.1.
- 304 Not Modified — сервер возвращает такой код, если клиент запросил документ методом GET, использовал заголовок If-Modified-Since или If-None-Match и документ не изменился с указанного момента. При этом сообщение сервера не должно содержать тела. Появился в HTTP/1.0.
- 305 Use Proxy — запрос к запрашиваемому ресурсу должен осуществляться через прокси-сервер, URI которого указан в поле Location заголовка. Данный код ответа могут использовать только исходные HTTP-сервера (не прокси). Введено в HTTP/1.1.
- 307 Temporary Redirect — запрашиваемый ресурс на короткое время доступен по другому URI, указанный в поле Location заголовка. Метод запроса (GET/POST) менять не разрешается. Например, POST-запрос должен быть отправлен по новому URI тем же методом POST. Этот код был введён вместе с 303-м вместо 302-го для избежания неоднозначности. Введено в RFC 2616 (обновление HTTP/1.1).
- 308 Permanent Redirect — запрашиваемый ресурс был окончательно перенесен на новый URI, указанный в поле Location заголовка. Метод запроса (GET/POST) менять не разрешается. Например, POST-запрос должен быть отправлен по новому URI тем же методом POST. Этот код был введён вместо 301-го для избежания неоднозначности. Введено в RFC 7238 (RFC 7538).
Класс кодов 4xx предназначен для указания ошибок со стороны клиента. При использовании всех методов, кроме HEAD, сервер должен вернуть в теле сообщения гипертекстовое пояснение для пользователя.
- 400 Bad Request — сервер обнаружил в запросе клиента синтаксическую ошибку. Появился в HTTP/1.0.
- 401 Unauthorized — для доступа к запрашиваемому ресурсу требуется аутентификация. В заголовке ответ должен содержать поле WWW-Authenticate с перечнем условий аутентификации. Иными словами, для доступа к запрашиваемому ресурсу клиент должен представиться, послав запрос, включив при этом в заголовок сообщения поле Authorization с требуемыми для аутентификации данными. Если запрос уже включает данные для авторизации, ответ 401 означает, что в авторизации с ними отказано.
Сервер вернул ошибку 403 при попытке просмотра каталога «cgi-bin», доступ к которому был запрещён
Пример ошибки 502 Bad Gateway
Коды 5xx выделены под случаи необработанных исключений при выполнении операций на стороне сервера. Для всех ситуаций, кроме использования метода HEAD, сервер должен включать в тело сообщения объяснение, которое клиент отобразит пользователю.
СсылкиПравить
Основные документы по протоколу HTTP (по убыванию даты публикации)
- Hypertext Transfer Protocol (HTTP) Status Code Registry . IANA (17 октября 2007). — реестр кодов состояния HTTP. Дата обращения: 30 июля 2009. Архивировано 17 февраля 2012 года.
- RFC 2616 Draft standard «Hypertext Transfer Protocol — HTTP/1.1» (англ.) (с «Протокол передачи гипертекста — HTTP/1.1»); IETF, июнь 1999; Fielding Roy (), Gettys Jim (Compaq/W3C), Mogul J. (Compaq), (MIT/W3C), Masinter L. (Xerox), Leach P. (Microsoft), Berners-Lee Tim (W3C/MIT) — обновление протокола HTTP версии 1.1.
- RFC 2068 Proposed standard «Hypertext Transfer Protocol — HTTP/1.1» (англ.) (с «Протокол передачи гипертекста — HTTP/1.1»); IETF, январь 1997; Fielding Roy (), Gettys Jim (DEC), Mogul J. (DEC), (MIT/LCS), Berners-Lee Tim (MIT/LCS) — ранняя спецификация по HTTP версии 1.1.
- RFC 1945 Informational «Hypertext Transfer Protocol — HTTP/1.0» (англ.) (с «Протокол передачи гипертекста — HTTP/1.0»); IETF, май 1996; Berners-Lee Tim (MIT/LCS), Fielding Roy (), (MIT/LCS) — самая первая спецификация по протоколу HTTP. Так же включает в себя описание HTTP/0.9.
Документы по расширениям и обновлениям протокола HTTP (по убыванию даты публикации)
- RFC 4918 Proposed Standard «HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)» (англ.) (с «Расширения HTTP для распределённой авторской работы и управления версиями через веб (WebDAV)»); IETF, июнь 2007; Dusseault Ed. L. () — поздняя спецификация по протоколу WebDAV, заместившая RFC 2518.
- RFC 3229 Proposed standard «Delta encoding in HTTP» (англ.) (с «Дельта-кодирование в HTTP»); IETF, январь 2002; Mogul J. (Compaq WRL), Krishnamurthy B. (AT&T), Douglis F. (AT&T), Feldmann A. (Univ. of Saarbrücken), Goland Y. (Marimba), van Hoff A. (Marimba), Hellerstein D. (ERS/USDA).
- RFC 2817 Proposed Standard «Upgrading to TLS Within HTTP/1.1» (англ.) (с «Обновление к TLS совместно с HTTP/1.1»); IETF, май 2000; (4K Associates/), Lawrence S. (Agranat Systems, Inc.) — обновление к RFC 2616 для описания работы HTTP и TLS.
- RFC 2774 Experimental «An HTTP Extension Framework» (англ.) (с «Каркас расширений HTTP»); IETF, февраль 2000; Nielsen H. (Microsoft), Leach P. (Microsoft), Lawrence S. (Agranat Systems).
- Internet Draft «WebDAV Advanced Collections Protocol» (с «Протокол продвинутых коллекций WebDAV»); IETF, 18 июня 1999; Slein J. (Xerox), Whitehead Jr. E. J. (), Davis J. (CourseNet), Clemm G. (Rational), Fay C. (), Crawford J. (IBM), Chihaya T. (DataChannel) — управление коллекциями в WebDAV; просрочился 18 декабря 1999 года.
- RFC 2518 Proposed Standard «HTTP Extensions for Distributed Authoring — WEBDAV» (англ.) (с «Расширения HTTP для распределённой авторской работы — WEBDAV»); IETF, февраль 1999; Goland Y. (Microsoft), Whitehead E. (), Faizi A. (Netscape), Carter S. (Novell), Jensen D. (Novell) — первая спецификация по протоколу WebDAV (замещена RFC 4918).
- RFC 2295 Experimental «Transparent Content Negotiation in HTTP» (англ.) (с «Прозрачное согласование содержимого в HTTP»); IETF, март 1998; Holtman K. (TUE), Mutz A. (Hewlett-Packard).
- Web Distributed Authoring and Versioning (WebDAV) Protocol: Client Extensions . Microsoft (14 марта 2007). — описание поддержки клиентских расширений в протоколе WebDAV. Дата обращения: 30 июля 2009. Архивировано 17 февраля 2012 года.
- RFC 2324 Informational «Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)» (англ.) (с «Гипертекстовый протокол управления кофеваркой (HTCPCP/1.0)»); IETF, 1 апреля 1998; Masinter L..
- KB 318380 Коды состояния служб IIS. Microsoft (4 декабря 2007). — список расширенных кодов состояния для протоколов HTTP и FTP. Дата обращения: 16 января 2010. Архивировано 17 февраля 2012 года.
- Справочник по кодам статуса HTTP. Яндекс. — обработка кодов состояния HTTP роботами Яндекса. Дата обращения: 2 мая 2018.
Ошибка 401 или Error 401 Unauthorized — Как понимать этот код? Что это значит для простого пользователя и вебмастера? Как устранить ошибку 401?
Любой пользователь Интернета хотя бы раз сталкивался с различными ошибками. Каждая из них возникает по различным причинам и порой это очень расстраивает и мешает нормально работать. Чтобы легче было понять, в чем именно заключается проблема, все они имеют свой специальный код. Этот код в свою очередь состоит из трех чисел, которое несет в себе важную какую-нибудь информацию.
Что означает ошибка 401?
Стоит заметить, что ошибки делятся на специальные группы (например, 400-499 говорят нам о проблемах выполнения запроса, а 500-599 о проблемах на самом сервере). Все про ошибки 5хх можно найти на нашем сайте, который посвящен этой теме.
Сегодня мы поговорим об ошибке 401, или Error 401 Unauthorized, что в переводе «нет доступа», о причинах ее возникновения и методами ее исправления. С данной проблемой сталкиваются достаточно часто, но она не несет в себе ничего устрашающего, как на первый взгляд кажется. И да, если вы вебмастер, можете бздохнуть с облегчением, потому что эта ошибка, в отличие от других ошибок, не несет в себе чего то болезненого для вашего сайта. И если вы знаете что нужно делать в такой ситуации, то буквально за считанные минуты ваша работа в Интернете наладится.
Error 401 возникает только тогда, когда существуют какие-нибудь проблемы с авторизацией.
Какие причины ошибки 401?
Итак, теперь вы умеете исправлять ошибку 401 Unauthorized. Как вы уже убедились, обычному пользователю это не составит никакого труда, секундное дело. Конечно, владельцу сайта придется повозиться чуть больше, но все равно проблема решается. Желаем успехов и поменьше скверных ошибок.
Ошибка 401 — что это значит и как исправить
Ошибка 401 — это код состояния HTTP, который означает, что страница к которой вы пытались получить доступ, не может быть загружена, пока вы не войдете в систему с действительным идентификатором пользователя и паролем.
Если вы только что вошли в систему и получили 401 ошибку, это означает, что введенные вами учетные данные по какой-то причине были недействительными.
401 Несанкционированные сообщения об ошибках часто настраиваются каждым веб-сайтом индивидуально, поэтому имейте в виду, что эта ошибка может проявляться в большем количестве вариаций написания, самые распространенные:
Ошибка авторизации 401 отображается в окне веб-браузера. Как и большинство подобных ошибок, вы можете встретить их во всех браузерах, работающих в любой операционной системе.
Как исправить ошибку 401
Проверьте правильность написания URL на наличие ошибок. Возможно, произошла ошибка 401 Unauthorized, потому что URL был введен неправильно или выбранная ссылка указывает на неправильный URL — только для авторизованных пользователей.
Если у вас нет учетных данных или вы их забыли, следуйте инструкциям на веб-сайте для настройки учетной записи или изменения пароля.
Основные внутренние ошибки сервера
Веб-серверы, работающие под управлением Microsoft IIS, могут предоставить дополнительную информацию об ошибке 401 Unauthorized, например:
Ошибки похожие на 401
Следующие сообщения также являются ошибками на стороне клиента и относятся к 401 ошибке: 400 неверный запрос, 403 запрещенный запрос, 404 страница не найдена и 408 тайм-аут запроса.
Ошибка 401, или проблемы с авторизацией
Интернет – это не то место, где все исправно и надежно функционирует. Написание программного кода – это непростая и достаточно творческая задача, и если все работает нормально – значит, ошибки просто не проявили себя. Программы без ошибок не бывает, это знает практически каждый пользователь компьютеров. Одни ошибки нам просты и понятны, а другие вызывают вопросы. Ошибка 401 – популярный сбой, непонятный пользователям.
Авторизация
Один из самых раздражающих процессов на сайтах – это авторизация. Проходить ее раз за разом неудобно, а сохраненные в кэш памяти пароли иногда исчезают. Приходится восстанавливать.
Ошибка 401 может возникать не только из-за того, что пользователь ошибся в пароле или забыл его. Случается, что учетная запись по ошибке удаляется администратором ресурса или в системе произошел серьезный сбой. В таком случае пользователю нужно писать в техническую поддержку ресурса.
Ошибка ошибке рознь
Несмотря на то что эта ошибка имеет всего один корень – проблемы с авторизацией, бывают разновидности. Как правило, система сообщает пользователю, что именно произошло.
Ошибка 401 – это общее название. Оно отражает суть проблемы, но в разных приложениях она может по-разному проявляться и даже по-разному называться. Цифирное обозначение будет всегда, но слово «ошибка» может быть заменено на другое слово или вовсе на непонятный код.
Проблемы в зеленом банке
Эта ошибка получила особую популярность на территории России во многом благодаря зеленому банку, который всегда рядом. Однажды в одном из субъектов РФ случилась неприятная ситуация – тысячи пользователей не смогли пройти авторизация в приложении банка. Srve0295e ошибка 401 – эту надпись увидели многие на экране смартфона. Причина появления такой ошибки до сих пор неясна. Вероятнее всего это либо проблемы у банка, либо у провайдера. При возникновении ошибки рекомендуется сразу позвонить в техническую поддержку, а еще лучше – провайдеру.
401 Несанкционированная ошибка – это ошибка состояния HTTPS, с которой можно столкнуться в любом браузере, например Edge, Firefox, Google Chrome и т. д. В основном, эта ошибка отображается при возникновении проблемы с загрузкой веб-страницы.
Вы, возможно, сталкивались с случаем, когда вы сталкиваетесь с 401 несанкционированным доступом, в котором отказано из-за неверных учетных данных при появлении нескольких веб-сайтов. Сообщение об ошибке 401 обычно отображается на сайте, который требует учетных данных пользователя. Так что, если вы получили эту ошибку, это, вероятно, означает, что вы ввели неверное имя пользователя или пароль.
Однако существуют случаи, когда вы сталкиваетесь с этими ошибочными ошибками, несмотря на наличие действительных учетных данных. Кроме того, эти ошибки могут появляться по-разному, например 401 Несанкционированный, HTTP Ошибка 401 – Несанкционированный или Требуется Авторизация; но они все означают одно и то же. Сообщения об ошибках часто изменяются веб-сайтами и отображаются в браузере в зависимости от веб-сайта, в который вы вошли. В этой статье мы обсудим решения для исправления этой ошибки.
Исправить 401 несанкционированную ошибку
Много раз может случиться, что вы дадите неправильный URL или попытаетесь открыть ссылку URL, которая зарезервирована только для авторизованных пользователей. В этом случае отображается ошибка 401. Поэтому перед вводом любого URL убедитесь, что вы указали правильный адрес.
Неверные логин или пароль
Вполне естественно, что запоминание этих больших масштабов паролей является непростой задачей. Если после входа в систему появляется ошибка 401, это означает, что введенное вами имя пользователя или пароль недействительны. В этом случае используйте встроенный сброс пароля на веб-сайте, чтобы установить новый пароль, и выполните процедуру, указанную на веб-сайте. Процесс прост, если вы зарегистрировали сайт с действительным адресом электронной почты на начальном этапе, в противном случае вы можете обратиться к администратору сайта, чтобы восстановить доступ.
Найдите опцию безопасного доступа на главной странице сайта.
Если у вас есть действительное имя URL и вы все еще видите ошибку 401, вполне возможно, что вы не вошли на сайт. В этом случае перейдите на главную страницу веб-сайта и найдите вариант с надписью «Безопасный доступ». Дайте свои учетные данные на странице входа и попробуйте загрузить страницу. Если у вас нет учетных данных, вы можете создать учетную запись. Это делается просто следуя инструкциям, приведенным на сайте.
Ложный логин от хост-сервера
Хотя ошибка 401 является ошибкой на стороне клиента, ошибка пользователя на стороне сервера может привести к ложному требованию входа в систему. То есть ошибка 401 отображается для любого посетителя сайта по ошибке. Например, на стороне сервера может случиться так, что сетевой администратор разрешит аутентификацию входа в систему всем пользователям, даже если это не требуется. Это создает проблему для обычных пользователей сайта, поскольку сообщение об ошибке отображается для всех, кто посещает сайт. В этом случае единственный способ решить проблему – это сообщить об этом сайту, связавшись с администратором сайта.