Код 302 Found не является ошибкой, это информационное сообщение, которое возвращается в ответ на запрос
к временно перемещенному ресурсу. Код Found должен содержать в себе информацию о новом
месторасположении.
О чем свидетельствует ошибка 302
Код 302 устанавливает системный администратор ресурса. При этом в заголовке сообщения Location должен
быть указан новый адрес. Браузер автоматически перенаправляется по указанному url, но при этом поисковые
системы не обновляют ссылки так, как это происходит в случае использования кода 301 Redirect. Вес ссылки
в поисковой системе при этом также не изменяется и не переносится на новый адрес, указанный в заголовке
Location.
Рекомендуется применять этот способ перенаправления в качестве ответа только для некоторых поисковых
методов, в частности:
- GET, при котором все данные передаются в строке запроса;
- HEAD, при котором сервер запрашивает информацию о заголовке искомого ресурса или файла.
Для ответа на запросы, отправленные другими поисковыми методами, при временном перемещении ресурса
рекомендовано применять код 307 Temporary redirect
Что делать пользователю, когда в браузере появляется код ошибки 302
Если вы увидели сообщение 302 Found, прежде всего, посмотрите заголовки, в которых должно содержаться
перенаправление. Если в заголовке нет перенаправления, напишите в техническую поддержку ресурса или
хостинг-провайдера — бывает, что его настраивают по ошибке.
Причины возникновения кода 302 found
Его не настраивают для тех url, которые изменены на постоянной основе. Основная причина использования —
техническое обслуживание сайта, во время которого контент может быть размещен на временном домене.
Главная цель, которую преследует при этом системный администратор — чтобы поисковые системы не начали
индексацию по новому адресу. Иногда не совсем добросовестные администраторы интернет-магазинов
настраивают код 302 для товаров, которых в данный момент нет в наличии.
Вас также может заинтересовать
-
Категория:
Что делать (ошибки и проблемы) -
– Автор:
Игорь (Администратор)
Сайты дело такое. В них постоянно что-то корректируется, так сказать живёт и движется. Поэтому нет ничего удивительно в том, что периодически можно столкнуться с кодами и ошибками 301, 302, 303, 304. О том, что эти коды значат и ещё о паре нюансов, и пойдет речь в данном обзоре.
Что значат коды и ошибки 301, 302, 303, 304?
HTTP 301 Moved Permanently (Навсегда перемещен) — этот код означает, что исходный запрошенный браузером документ (веб-страница) полноценно перенесён в другой документ, URL адрес которого указан в HTTP заголовке Location.
Если говорить простыми словами, то суть в следующем. В сайте была страница «page1». Владелец сайта перенёс её в страницу «page2». Пользователь открывает браузер и пытается открыть страницу «page1». Сайт возвращает браузеру код 301 и указывает страницу «page2» в заголовке «Location». Браузер перенаправляет пользователя на страницу «page2». Кстати, само действие, когда пользователя перекидывает с одной страницы в другую, называется редиректом (более подробно смотрите ссылки в конце обзора).
HTTP 302 Moved Temporarily, Found (Временно перемещен) — этот код означает, что исходный запрошенный браузером документ (веб-страница) временно перемещен в другой документ, URL адрес которого указан в HTTP заголовке Location.
Сам механизм крайне схож с предыдущим, но существует одна большая разница. Код и ошибка 302 означает, что страница Временно перенесена. Иными словами, что пользователю не стоит учитывать текущий адрес.
HTTP 303 See Other (Просмотр других ресурсов) — этот код означает, что исходный документ (веб-страница) временно находятся по другому адресу, но обращаться к которому можно только с методом GET.
Небольшая справка: GET — просто запросить страницу. POST — при запросе страницы также отправляются какие-то данные пользователя. Простой пример GET — это вы просто ввели в браузере URL страницы (данные никакие не отправляются). Простой пример POST — это вы открыли страницу, ввели какие-то данные в какую-нибудь формочку и нажали кнопку «Отправить».
Механизм схож с 302, но существует один важный момент, что указанную страницу в Location можно открыть только методом GET. Делается это для того, чтобы данные пользователя точно не отправлялись.
Чтобы лучше понять смысл, рассмотрим ситуацию. Допустим, вы открываете страницу поиска в сайте. Вводите какой-то текст и нажимаете кнопку «Искать». Браузер отправляет POST запрос с текстом поиска. Сервер находит нужную страницу и отправляет клиенту код 303 с URL адресом этой страницы. В таком случае браузер будет открывать эту страницу GET запросом (т.е. текст поиска не будет передаваться, как это было бы при POST запросе).
Кстати, в противовес 303 так же существует код HTTP 307 Temporary Redirect (Временный редирект), который подразумевает передачу как GET, так и POST запроса. По сути, 303 и 307 это конкретизация действий с GET и POST, а смысл у них как у 302.
HTTP 304 Not Modified (Не модифицировано) — этот код передаётся в том случае, когда браузер пользователя при открытии документа (страницы) использовал HTTP заголовок If-Modified-Since (там ещё If-None-Match может быть), в котором указывается дата последней загрузки документа, и документ (веб-страница) не был изменен с указанного времени.
А теперь простыми словами о механизме. Когда пользователь в первый раз открывает страницу, то её содержимое браузер видит впервые, поэтому будет загружать страницу целиком (вместе с картинками, CSS, JS и т.п.). При этом браузер сохранит у себя в кэше эту страницу и её ресурсы (картинки, CSS, JS и т.п.).
Когда же браузер будет открывать страницу второй раз, то логично было бы уточнить у сервера, а нужно ли скачивать эти данные ещё раз или можно использовать те, что браузер уже сохранил у себя в кэше. В частности, CSS и JS обычно редко меняются. Поэтому при вторичном запросе документа (и его отдельных ресурсов) браузер добавляет заголовок If-Modified-Since с датой первой загрузки (и при необходимости If-None-Match). И если документ (или его отдельные ресурсы) не были изменены, то браузер получит код 304 и не будет ничего скачивать.
Подобный подход позволяет экономить трафик и быстрее загружать веб-страницы. В частности, у большинства сайтов существуют ресурсы (CSS, JS и т.п.), которые много весят, но которые практически никогда не меняются (порой даже со времён создания сайта). Соответственно, какой смысл каждый раз их таскать через интернет? В этом случае и применяется 304.
Примечание: Никогда не обращали внимание, что когда в первый раз открываешь сайт, то он грузится чуть медленнее, чем потом, когда открываешь другие его страницы? Это как раз эффект от использования 304.
Про важность редиректов в СЕО (SEO) и коды 301, 302, 303, 307?
Важно понимать, что от того, как вы применяете редиректы с помощью кодов 301, 302, 303 и 307, напрямую зависит качество сео-продвижения вашего сайта. Но сначала пару важных деталей и моментов.
Как поисковики воспринимают код и ошибку 301? Логика элементарна. Если страница полностью перемещена, то значит исходную страницу нужно убрать из поиска и добавить ту, которая указана в Location.
Как поисковики воспринимают код и ошибку 302, 303, 307? Ничего сверхнеожиданного. Если страница временно перемещена, то значит исходную страницу нужно оставить, а ту, которая указана в Location, не учитывать.
А теперь то, почему это важно. Абстрактный пример для понимания. Скажем, существует страница «page1», которая была перенесена в «page2», но вместо 301-го редиректа использовался 302-й. Вы изменили Description (см. обзор мета теги) в странице «page2». Что делать поисковику? 302-й код означает, что это временный перенос. Поэтому с большой вероятностью метаописание поисковик будет брать то, которое было у «page1», а не то, которое у «page2». А вот если использовать 301-й редирект, то поисковик будет брать то описание, которое у «page2».
Отдельно добавлю про 304 и СЕО. Стоит понимать, что поисковые боты также учитывают этот код. Суть в том, что для каждого сайта выделяется некий лимит обхода (абстрактно, 1000 страниц в месяц). А в сайте может быть много веб-страниц (скажем, 10 тысяч, 20 тысяч, 100 тысяч и т.д.). Поэтому если какие-то страницы вообще не меняются или остаются неизменными в течение длительного времени, то использование 304-го кода позволит высвободить часть лимита для обхода других страниц. Это, соответственно, увеличивает скорость индексации и плюс поисковые боты меньше нагружают сайт.
Также советую ознакомиться с обзорами Редирект (redirect) что это и зачем он нужен? и ещё PHP редирект — перенаправление на другую страницу, так как в них больше деталей и практики.
Понравилась заметка? Тогда время подписываться в социальных сетях и делать репосты!
☕ Понравился обзор? Поделитесь с друзьями!
-
Ошибка 503 Service Unavailable: что означает и как исправить?
Что делать (ошибки и проблемы) -
Ошибка 502 Bad Gateway: что означает и как исправить?
Что делать (ошибки и проблемы) -
Ошибка 401 Unauthorized: что означает и как исправить?
Что делать (ошибки и проблемы) -
Ошибка 504 Gateway Time Out: что означает и как исправить?
Что делать (ошибки и проблемы) -
Что делать если программа не отвечает или как закрыть зависшую программу в Windows
Что делать (ошибки и проблемы) -
Как исправить возникшие проблемы при помощи интерфейса Windows «Устранение неполадок»?
Что делать (ошибки и проблемы)
Добавить комментарий / отзыв
Содержание
Составили подробный классификатор кодов состояния HTTP. Добавляйте в закладки, чтобы был под рукой, когда понадобится.
Что такое код ответа HTTP
Когда посетитель переходит по ссылке на сайт или вбивает её в поисковую строку вручную, отправляется запрос на сервер. Сервер обрабатывает этот запрос и выдаёт ответ — трехзначный цифровой код HTTP от 100 до 510. По коду ответа можно понять реакцию сервера на запрос.
Первая цифра в ответе обозначает класс состояния, другие две — причину, по которой мог появиться такой ответ.
Как проверить код состояния страницы
Проверить коды ответа сервера можно вручную с помощью браузера и в панелях веб‑мастеров: Яндекс.Вебмастер и Google Search Console.
В браузере
Для примера возьмём Google Chrome.
-
Откройте панель разработчика в браузере клавишей F12, комбинацией клавиш Ctrl + Shift + I или в меню браузера → «Дополнительные инструменты» → «Инструменты разработчика». Подробнее об этом рассказывали в статье «Как открыть исходный код страницы».
-
Переключитесь на вкладку «Сеть» в Инструментах разработчика и обновите страницу:
В Яндекс.Вебмастере
Откройте инструмент «Проверка ответа сервера» в Вебмастере. Введите URL в специальное поле и нажмите кнопку «Проверить»:
Как добавить сайт в Яндекс.Вебмастер и другие сервисы Яндекса
В Google Search Console
Чтобы посмотреть код ответа сервера в GSC, перейдите в инструмент проверки URL — он находится в самом верху панели:
Введите ссылку на страницу, которую хотите проверить, и нажмите Enter. В результатах проверки нажмите на «Изучить просканированную страницу» в блоке «URL есть в индексе Google».
А затем в открывшемся окне перейдите на вкладку «Подробнее»:
Теперь расскажем подробнее про все классы кодов состояния HTTP.
1* класс кодов (информационные сообщения)
Это системный класс кодов, который только информирует о процессе передачи запроса. Такие ответы не являются ошибкой, хотя и могут отображаться в браузере как Error Code.
100 Continue
Этот ответ сообщает, что полученные сведения о запросе устраивают сервер и клиент может продолжать отправлять данные. Такой ответ может требоваться клиенту, если на сервер отправляется большой объём данных.
101 Switching Protocols
Сервер одобрил переключение типа протокола, которое запросил пользователь, и в настоящий момент выполняет действие.
102 Processing
Запрос принят — он находится в обработке, и на это понадобится чуть больше времени.
103 Checkpoint
Контрольная точка — используется в запросах для возобновления после прерывания запросов POST или PUT.
POST отправляет данные на сервер, PUT создает новый ресурс или заменяет существующий данными, представленными в теле запроса.
Разница между ними в том, что PUT работает без изменений: повторное его применение даёт такой же результат, что и в первый раз, а вот повторный вызов одного и того же метода POST часто меняет данные.
Пример — оформленный несколько раз интернет‑заказ. Такое часто происходит как раз по причине неоднократного использования запроса PUT.
105 Name Not Resolved
Не удается преобразовать DNS‑адрес сервера — это означает ошибку в службе DNS. Эта служба преобразует IP‑адреса в знакомые нам доменные имена.
2* класс кодов (успешно обработанные запросы)
Эти коды информируют об успешности принятия и обработки запроса. Также сервер может передать заголовки или тело сообщений.
200 ОК
Все хорошо — HTTP‑запрос успешно обработан (не ошибка).
201 Created
Создано — транзакция успешна, сформирован новый ресурс или документ.
202 Accepted
Принято — запрос принят, но ещё не обработан.
203 Non‑Authoritative Information
Информация не авторитетна — запрос успешно обработан, но передаваемая информация была взята не из первичного источника (данные могут быть устаревшими).
204 No Content
Нет содержимого — запрос успешно обработан, однако в ответе только заголовки без контента сообщения. Не нужно обновлять содержимое документа, но можно применить к нему полученные метаданные.
205 Reset Content
Сбросить содержимое. Запрос успешно обработан — но нужно сбросить введенные данные. Страницу можно не обновлять.
206 Partial Content
Частичное содержимое. Сервер успешно обработал часть GET‑запроса, а другую часть вернул.
GET — метод для чтения данных с сайта. Он говорит серверу, что клиент хочет прочитать какой‑то документ.
Представим интернет‑магазин и страницы каталога. Фильтры, которые выбирает пользователь, передаются благодаря методу GET. GET‑запрос работает с получением данных, а POST‑запрос нужен для отправки данных.
При работе с подобными ответами следует уделить внимание кэшированию.
207 Multi‑Status
Успешно выполнено несколько операций — сервер передал результаты выполнения нескольких независимых операций. Они появятся в виде XML‑документа с объектом multistatus.
226 IM Used
Успешно обработан IM‑заголовок (специальный заголовок, который отправляется клиентом и используется для передачи состояния HTTP).
3* класс кодов (перенаправление на другой адрес)
Эти коды информируют, что для достижения успешной операции нужно будет сделать другой запрос, возможно, по другому URL.
300 Multiple Choices
Множественный выбор — сервер выдает список нескольких возможных вариантов перенаправления (максимум — 5). Можно выбрать один из них.
301 Moved Permanently
Окончательно перемещено — страница перемещена на другой URL, который указан в поле Location.
302 Found/Moved
Временно перемещено — страница временно перенесена на другой URL, который указан в поле Location.
303 See Other
Ищите другую страницу — страница не найдена по данному URL, поэтому смотрите страницу по другому URL, используя метод GET.
304 Not Modified
Модификаций не было — с момента последнего визита клиента изменений не было.
305 Use Proxy
Используйте прокси — запрос к нужному ресурсу можно сделать только через прокси‑сервер, URL которого указан в поле Location заголовка.
306 Unused
Зарезервировано. Код в настоящий момент не используется.
307 Temporary Redirect
Временное перенаправление — запрашиваемый ресурс временно доступен по другому URL.
Этот код имеет ту же семантику, что код ответа 302 Found, за исключением того, что агент пользователя не должен изменять используемый метод HTTP: если в первом запросе использовался POST, то во втором запросе также должен использоваться POST.
308 Resume Incomplete
Перемещено полностью (навсегда) — запрашиваемая страница была перенесена на новый URL, указанный в поле Location заголовка. Метод запроса (GET/POST) менять не разрешается.
4* класс кодов (ошибки на стороне клиента)
Эти коды указывают на ошибки со стороны клиентов.
400 Bad Request
Неверный запрос — запрос клиента не может быть обработан, так как есть синтаксическая ошибка (возможно, опечатка).
401 Unauthorized
Не пройдена авторизация — запрос ещё в обработке, но доступа нет, так как пользователь не авторизован.
Для доступа к запрашиваемому ресурсу клиент должен представиться, послав запрос, включив при этом в заголовок сообщения поле Authorization.
402 Payment Required
Требуется оплата — зарезервировано для использования в будущем. Код предусмотрен для платных пользовательских сервисов, а не для хостинговых компаний.
403 Forbidden
Запрещено — запрос принят, но не будет обработан, так как у клиента недостаточно прав. Может возникнуть, когда пользователь хочет открыть системные файлы (robots, htaccess) или не прошёл авторизацию.
404 Not Found
Не найдено — запрашиваемая страница не обнаружена. Сервер принял запрос, но не нашёл ресурса по указанному URL (возможно, была ошибка в URL или страница была перемещена).
405 Method Not Allowed
Метод не разрешён — запрос был сделан методом, который не поддерживается данным ресурсом. Сервер должен предложить доступные методы решения в заголовке Allow.
406 Not Acceptable
Некорректный запрос — неподдерживаемый поисковиком формат запроса (поисковый робот не поддерживает кодировку или язык).
407 Proxy Authentication Required
Нужно пройти аутентификацию прокси — ответ аналогичен коду 401, только нужно аутентифицировать прокси‑сервер.
408 Request Timeout
Тайм‑аут запроса — запрос клиента занял слишком много времени. На каждом сайте существует свое время тайм‑аута — проверьте интернет‑соединение и просто обновите страницу.
409 Conflict
Конфликт (что‑то пошло не так) — запрос не может быть выполнен из‑за конфликтного обращения к ресурсу (несовместимость двух запросов).
410 Gone
Недоступно — ресурс раньше был размещён по указанному URL, но сейчас удалён и недоступен (серверу неизвестно месторасположение).
411 Length Required
Добавьте длины — сервер отклоняет отправляемый запрос, так как длина заголовка не определена, и он не находит значение Content‑Length.
Нужно исправить заголовки на сервере, и в следующий раз робот сможет проиндексировать страницу.
412 Precondition Failed
Предварительное условие не выполнено — стоит проверить правильность HTTP‑заголовков данного запроса.
413 Request Entity Too Large
Превышен размер запроса — перелимит максимального размера запроса, принимаемого сервером. Браузеры поддерживают запросы от 2 до 8 килобайт.
414 Request‑URI Too Long
Превышена длина запроса — сервер не может обработать запрос из‑за длинного URL. Такая ошибка может возникнуть, например, когда клиент пытается передать чересчур длинные параметры через метод GET, а не POST.
415 Unsupported Media Type
Формат не поддерживается — сервер не может принять запрос, так как данные подгружаются в некорректном формате, и сервер разрывает соединение.
416 Requested Range Not Satisfiable
Диапазон не поддерживается — ошибка возникает в случаях, когда в самом HTTP‑заголовке прописывается некорректный байтовый диапазон.
Корректного диапазона в необходимом документе может просто не быть, или есть опечатка в синтаксисе.
417 Expectation Failed
Ожидания не оправдались — прокси некорректно идентифицировал содержимое поля «Expect: 100‑Continue».
418 I’m a teapot
Первоапрельская шутка разработчиков в 1998 году. В расшифровке звучит как «я не приготовлю вам кофе, потому что я чайник». Не используется в работе.
422 Unprocessable Entity
Объект не обработан — сервер принял запрос, но в нём есть логическая ошибка. Стоит посмотреть в сторону семантики сайта.
423 Locked
Закрыто — ресурс заблокирован для выбранного HTTP‑метода. Можно перезагрузить роутер и компьютер. А также использовать только статистический IP.
424 Failed Dependency
Неуспешная зависимость — сервер не может обработать запрос, так как один из зависимых ресурсов заблокирован.
Выполнение запроса напрямую зависит от успешности выполнения другой операции, и если она не будет успешно завершена, то вся обработка запроса будет прервана.
425 Unordered Collection
Неверный порядок в коллекции — ошибка возникает, если клиент указал номер элемента в неупорядоченном списке или запросил несколько элементов в порядке, отличном от серверного.
426 Upgrade Required
Нужно обновление — в заголовке ответа нужно корректно сформировать поля Upgrade и Connection.
Этот ответ возникает, когда серверу требуется обновление до SSL‑протокола, но клиент не имеет его поддержки.
428 Precondition Required
Нужно предварительное условие — сервер просит внести в запрос информацию о предварительных условиях обработки данных, чтобы выдавать корректную информацию по итогу.
429 Too Many Requests
Слишком много запросов — отправлено слишком много запросов за короткое время. Это может указывать, например, на попытку DDoS‑атаки, для защиты от которой запросы блокируются.
431 Request Header Fields Too Large
Превышена длина заголовков — сервер может и не отвечать этим кодом, вместо этого он может просто сбросить соединение.
Исправляется это с помощью сокращения заголовков и повторной отправки запроса.
434 Requested Host Unavailable
Адрес запрашиваемой страницы недоступен.
444 No Response
Нет ответа — код отображается в лог‑файлах, чтобы подтвердить, что сервер никак не отреагировал на запрос пользователя и прервал соединение. Возвращается только сервером nginx.
Nginx — программное обеспечение с открытым исходным кодом. Его используют для создания веб‑серверов, а также в качестве почтового или обратного прокси‑сервера. Nginx решает проблему падения производительности из‑за роста трафика.
449 Retry With
Повторите попытку — ошибка говорит о необходимости скорректировать запрос и повторить его снова. Причиной становятся неверно указанные параметры (возможно, недостаточно данных).
450 Blocked by Windows Parental Controls
Заблокировано родительским контролем — говорит о том, что с компьютера попытались зайти на заблокированный ресурс. Избежать этой ошибки можно изменением параметров системы родительского контроля.
451 Unavailable For Legal Reasons
Недоступно по юридическим причинам — доступ к ресурсу закрыт, например, по требованию органов государственной власти или по требованию правообладателя в случае нарушения авторских прав.
456 Unrecoverable Error
Неустранимая ошибка — при обработке запроса возникла ошибка, которая вызывает некорректируемые сбои в таблицах баз данных.
499 Client Closed Request
Запрос закрыт клиентом — нестандартный код, используемый nginx в ситуациях, когда клиент закрыл соединение, пока nginx обрабатывал запрос.
5* класс кодов (ошибки на стороне сервера)
Эти коды указывают на ошибки со стороны серверов.
При использовании всех методов, кроме HEAD, сервер должен вернуть в теле сообщения гипертекстовое пояснение для пользователя. И его можно использовать в работе.
500 Internal Server Error
Внутренняя ошибка сервера — сервер столкнулся с неким условием, из‑за которого не может выполнить запрос.
Проверяйте, корректно ли указаны директивы в системных файлах (особенно htaccess) и нет ли ошибки прав доступа к файлам. Обратите внимание на ошибки внутри скриптов и их медленную работу.
501 Not Implemented
Не выполнено — код отдается, когда сам сервер не может идентифицировать метод запроса.
Сами вы эту ошибку не исправите. Устранить её может только сервер.
502 Bad Gateway
Ошибка шлюза — появляется, когда сервер, выступая в роли шлюза или прокси‑сервера, получил ответное сообщение от вышестоящего сервера о несоответствии протоколов.
Актуально исключительно для прокси и шлюзовых конфигураций.
503 Service Unavailable
Временно не доступен — сервер временно не имеет возможности обрабатывать запросы по техническим причинам (обслуживание, перегрузка и прочее).
В поле Retry‑After заголовка сервер укажет время, через которое можно повторить запрос.
504 Gateway Timeout
Тайм‑аут шлюза — сервер, выступая в роли шлюза или прокси‑сервера, не получил ответа от вышестоящего сервера в нужное время.
Исправить эту ошибку самостоятельно не получится. Здесь дело в прокси, часто — в веб‑сервере.
Первым делом просто обновите веб‑страницу. Если это не помогло, нужно почистить DNS‑кэш. Для этого нажмите горячие клавиши Windows+R и введите команду cmd (Control+пробел). В открывшемся окне укажите команду ipconfig / flushdns и подтвердите её нажатием Enter.
505 HTTP Version Not Supported
Сервер не поддерживает версию протокола — отсутствует поддержка текущей версии HTTP‑протокола. Нужно обеспечить клиента и сервер одинаковой версией.
506 Variant Also Negotiates
Неуспешные переговоры — с такой ошибкой сталкиваются, если сервер изначально настроен неправильно. По причине ошибочной конфигурации выбранный вариант указывает сам на себя, из‑за чего процесс и прерывается.
507 Insufficient Storage
Не хватает места для хранения — серверу недостаточно места в хранилище. Нужно либо расчистить место, либо увеличить доступное пространство.
508 Loop Detected
Обнаружен цикл — ошибка означает провал запроса и выполняемой операции в целом.
509 Bandwidth Limit Exceeded
Превышена пропускная способность — используется при чрезмерном потреблении трафика. Владельцу площадки следует обратиться к своему хостинг‑провайдеру.
510 Not Extended
Не продлён — ошибка говорит, что на сервере отсутствует нужное для клиента расширение. Чтобы исправить проблему, надо убрать часть неподдерживаемого расширения из запроса или добавить поддержку на сервер.
511 Network Authentication Required
Требуется аутентификация — ошибка генерируется сервером‑посредником, к примеру, сервером интернет‑провайдера, если нужно ввести пароль для получения доступа к сети через платную точку доступа.
This question was asked a long ago, while the RFC 2616 was still hanging around. Some answers to this question are based in such document, which is no longer relevant nowadays. Quoting Mark Nottingham who, at the time of writing, co-chairs the IETF HTTP and QUIC Working Groups:
Don’t use RFC2616. Delete it from your hard drives, bookmarks, and burn (or responsibly recycle) any copies that are printed out.
The old RFC 2616 has been supplanted by the following documents that, together, define the HTTP/1.1 protocol:
- RFC 7230: Message Syntax and Routing
- RFC 7231: Semantics and Content
- RFC 7232: Conditional Requests
- RFC 7233: Range Requests
- RFC 7234: Caching
- RFC 7235: Authentication
And, as of June 2022, a new set of RFCs obsoleted the documents listed above:
- RFC 9110: HTTP Semantics
- RFC 9111: HTTP Caching
- RFC 9112: HTTP/1.1
So I aim to provide an answer based in the RFC 9110, which is the current reference for the HTTP semantics.
The 302
status code
A response with 302
is a common way of performing URL redirection. Along with the 302
status code, the response should include a Location
header with a different URI. Such header will be parsed by the user agent and then perform the redirection:
Web browsers may change from POST
to GET
in the subsequent request. If this behavior is undesired, the 307
(Temporary Redirect) status code can be used instead.
This is how the 302
status code is defined in the RFC 9110:
6.4.3. 302 Found
The
302
(Found) status code indicates that the target resource
resides temporarily under a different URI. Since the redirection
might be altered on occasion, the client ought to continue to use the
target URI for future requests.The server SHOULD generate a
Location
header field in the response
containing a URI reference for the different URI. The user agent MAY
use theLocation
field value for automatic redirection. The server’s
response content usually contains a short hypertext note with a
hyperlink to the different URI(s).Note: For historical reasons, a user agent MAY change the
request method fromPOST
toGET
for the subsequent request. If
this behavior is undesired, the307
(Temporary Redirect) status
code can be used instead.
According to MDN web docs from Mozilla, a typical use case for [302
]302] is:
The Web page is temporarily not available for reasons that have not been unforeseen. That way, search engines don’t update their links.
Other status codes for redirection
The RFC 9110 defines the following status codes for redirection (some of these status codes were originally defined in other RFCs, but have all been consolidated in the RFC 9110):
301
: Moved Permanently302
: Found307
: Temporary Redirect308
: Permanent Redirect
Refer to this answer for further details.
Содержание
Составили подробный классификатор кодов состояния HTTP. Добавляйте в закладки, чтобы был под рукой, когда понадобится.
Что такое код ответа HTTP
Когда посетитель переходит по ссылке на сайт или вбивает её в поисковую строку вручную, отправляется запрос на сервер. Сервер обрабатывает этот запрос и выдаёт ответ — трехзначный цифровой код HTTP от 100 до 510. По коду ответа можно понять реакцию сервера на запрос.
Первая цифра в ответе обозначает класс состояния, другие две — причину, по которой мог появиться такой ответ.
Как проверить код состояния страницы
Проверить коды ответа сервера можно вручную с помощью браузера и в панелях веб‑мастеров: Яндекс.Вебмастер и Google Search Console.
В браузере
Для примера возьмём Google Chrome.
-
Откройте панель разработчика в браузере клавишей F12, комбинацией клавиш Ctrl + Shift + I или в меню браузера → «Дополнительные инструменты» → «Инструменты разработчика». Подробнее об этом рассказывали в статье «Как открыть исходный код страницы».
-
Переключитесь на вкладку «Сеть» в Инструментах разработчика и обновите страницу:
В Яндекс.Вебмастере
Откройте инструмент «Проверка ответа сервера» в Вебмастере. Введите URL в специальное поле и нажмите кнопку «Проверить»:
Как добавить сайт в Яндекс.Вебмастер и другие сервисы Яндекса
В Google Search Console
Чтобы посмотреть код ответа сервера в GSC, перейдите в инструмент проверки URL — он находится в самом верху панели:
Введите ссылку на страницу, которую хотите проверить, и нажмите Enter. В результатах проверки нажмите на «Изучить просканированную страницу» в блоке «URL есть в индексе Google».
А затем в открывшемся окне перейдите на вкладку «Подробнее»:
Теперь расскажем подробнее про все классы кодов состояния HTTP.
1* класс кодов (информационные сообщения)
Это системный класс кодов, который только информирует о процессе передачи запроса. Такие ответы не являются ошибкой, хотя и могут отображаться в браузере как Error Code.
100 Continue
Этот ответ сообщает, что полученные сведения о запросе устраивают сервер и клиент может продолжать отправлять данные. Такой ответ может требоваться клиенту, если на сервер отправляется большой объём данных.
101 Switching Protocols
Сервер одобрил переключение типа протокола, которое запросил пользователь, и в настоящий момент выполняет действие.
102 Processing
Запрос принят — он находится в обработке, и на это понадобится чуть больше времени.
103 Checkpoint
Контрольная точка — используется в запросах для возобновления после прерывания запросов POST или PUT.
POST отправляет данные на сервер, PUT создает новый ресурс или заменяет существующий данными, представленными в теле запроса.
Разница между ними в том, что PUT работает без изменений: повторное его применение даёт такой же результат, что и в первый раз, а вот повторный вызов одного и того же метода POST часто меняет данные.
Пример — оформленный несколько раз интернет‑заказ. Такое часто происходит как раз по причине неоднократного использования запроса PUT.
105 Name Not Resolved
Не удается преобразовать DNS‑адрес сервера — это означает ошибку в службе DNS. Эта служба преобразует IP‑адреса в знакомые нам доменные имена.
2* класс кодов (успешно обработанные запросы)
Эти коды информируют об успешности принятия и обработки запроса. Также сервер может передать заголовки или тело сообщений.
200 ОК
Все хорошо — HTTP‑запрос успешно обработан (не ошибка).
201 Created
Создано — транзакция успешна, сформирован новый ресурс или документ.
202 Accepted
Принято — запрос принят, но ещё не обработан.
203 Non‑Authoritative Information
Информация не авторитетна — запрос успешно обработан, но передаваемая информация была взята не из первичного источника (данные могут быть устаревшими).
204 No Content
Нет содержимого — запрос успешно обработан, однако в ответе только заголовки без контента сообщения. Не нужно обновлять содержимое документа, но можно применить к нему полученные метаданные.
205 Reset Content
Сбросить содержимое. Запрос успешно обработан — но нужно сбросить введенные данные. Страницу можно не обновлять.
206 Partial Content
Частичное содержимое. Сервер успешно обработал часть GET‑запроса, а другую часть вернул.
GET — метод для чтения данных с сайта. Он говорит серверу, что клиент хочет прочитать какой‑то документ.
Представим интернет‑магазин и страницы каталога. Фильтры, которые выбирает пользователь, передаются благодаря методу GET. GET‑запрос работает с получением данных, а POST‑запрос нужен для отправки данных.
При работе с подобными ответами следует уделить внимание кэшированию.
207 Multi‑Status
Успешно выполнено несколько операций — сервер передал результаты выполнения нескольких независимых операций. Они появятся в виде XML‑документа с объектом multistatus.
226 IM Used
Успешно обработан IM‑заголовок (специальный заголовок, который отправляется клиентом и используется для передачи состояния HTTP).
3* класс кодов (перенаправление на другой адрес)
Эти коды информируют, что для достижения успешной операции нужно будет сделать другой запрос, возможно, по другому URL.
300 Multiple Choices
Множественный выбор — сервер выдает список нескольких возможных вариантов перенаправления (максимум — 5). Можно выбрать один из них.
301 Moved Permanently
Окончательно перемещено — страница перемещена на другой URL, который указан в поле Location.
302 Found/Moved
Временно перемещено — страница временно перенесена на другой URL, который указан в поле Location.
303 See Other
Ищите другую страницу — страница не найдена по данному URL, поэтому смотрите страницу по другому URL, используя метод GET.
304 Not Modified
Модификаций не было — с момента последнего визита клиента изменений не было.
305 Use Proxy
Используйте прокси — запрос к нужному ресурсу можно сделать только через прокси‑сервер, URL которого указан в поле Location заголовка.
306 Unused
Зарезервировано. Код в настоящий момент не используется.
307 Temporary Redirect
Временное перенаправление — запрашиваемый ресурс временно доступен по другому URL.
Этот код имеет ту же семантику, что код ответа 302 Found, за исключением того, что агент пользователя не должен изменять используемый метод HTTP: если в первом запросе использовался POST, то во втором запросе также должен использоваться POST.
308 Resume Incomplete
Перемещено полностью (навсегда) — запрашиваемая страница была перенесена на новый URL, указанный в поле Location заголовка. Метод запроса (GET/POST) менять не разрешается.
4* класс кодов (ошибки на стороне клиента)
Эти коды указывают на ошибки со стороны клиентов.
400 Bad Request
Неверный запрос — запрос клиента не может быть обработан, так как есть синтаксическая ошибка (возможно, опечатка).
401 Unauthorized
Не пройдена авторизация — запрос ещё в обработке, но доступа нет, так как пользователь не авторизован.
Для доступа к запрашиваемому ресурсу клиент должен представиться, послав запрос, включив при этом в заголовок сообщения поле Authorization.
402 Payment Required
Требуется оплата — зарезервировано для использования в будущем. Код предусмотрен для платных пользовательских сервисов, а не для хостинговых компаний.
403 Forbidden
Запрещено — запрос принят, но не будет обработан, так как у клиента недостаточно прав. Может возникнуть, когда пользователь хочет открыть системные файлы (robots, htaccess) или не прошёл авторизацию.
404 Not Found
Не найдено — запрашиваемая страница не обнаружена. Сервер принял запрос, но не нашёл ресурса по указанному URL (возможно, была ошибка в URL или страница была перемещена).
405 Method Not Allowed
Метод не разрешён — запрос был сделан методом, который не поддерживается данным ресурсом. Сервер должен предложить доступные методы решения в заголовке Allow.
406 Not Acceptable
Некорректный запрос — неподдерживаемый поисковиком формат запроса (поисковый робот не поддерживает кодировку или язык).
407 Proxy Authentication Required
Нужно пройти аутентификацию прокси — ответ аналогичен коду 401, только нужно аутентифицировать прокси‑сервер.
408 Request Timeout
Тайм‑аут запроса — запрос клиента занял слишком много времени. На каждом сайте существует свое время тайм‑аута — проверьте интернет‑соединение и просто обновите страницу.
409 Conflict
Конфликт (что‑то пошло не так) — запрос не может быть выполнен из‑за конфликтного обращения к ресурсу (несовместимость двух запросов).
410 Gone
Недоступно — ресурс раньше был размещён по указанному URL, но сейчас удалён и недоступен (серверу неизвестно месторасположение).
411 Length Required
Добавьте длины — сервер отклоняет отправляемый запрос, так как длина заголовка не определена, и он не находит значение Content‑Length.
Нужно исправить заголовки на сервере, и в следующий раз робот сможет проиндексировать страницу.
412 Precondition Failed
Предварительное условие не выполнено — стоит проверить правильность HTTP‑заголовков данного запроса.
413 Request Entity Too Large
Превышен размер запроса — перелимит максимального размера запроса, принимаемого сервером. Браузеры поддерживают запросы от 2 до 8 килобайт.
414 Request‑URI Too Long
Превышена длина запроса — сервер не может обработать запрос из‑за длинного URL. Такая ошибка может возникнуть, например, когда клиент пытается передать чересчур длинные параметры через метод GET, а не POST.
415 Unsupported Media Type
Формат не поддерживается — сервер не может принять запрос, так как данные подгружаются в некорректном формате, и сервер разрывает соединение.
416 Requested Range Not Satisfiable
Диапазон не поддерживается — ошибка возникает в случаях, когда в самом HTTP‑заголовке прописывается некорректный байтовый диапазон.
Корректного диапазона в необходимом документе может просто не быть, или есть опечатка в синтаксисе.
417 Expectation Failed
Ожидания не оправдались — прокси некорректно идентифицировал содержимое поля «Expect: 100‑Continue».
418 I’m a teapot
Первоапрельская шутка разработчиков в 1998 году. В расшифровке звучит как «я не приготовлю вам кофе, потому что я чайник». Не используется в работе.
422 Unprocessable Entity
Объект не обработан — сервер принял запрос, но в нём есть логическая ошибка. Стоит посмотреть в сторону семантики сайта.
423 Locked
Закрыто — ресурс заблокирован для выбранного HTTP‑метода. Можно перезагрузить роутер и компьютер. А также использовать только статистический IP.
424 Failed Dependency
Неуспешная зависимость — сервер не может обработать запрос, так как один из зависимых ресурсов заблокирован.
Выполнение запроса напрямую зависит от успешности выполнения другой операции, и если она не будет успешно завершена, то вся обработка запроса будет прервана.
425 Unordered Collection
Неверный порядок в коллекции — ошибка возникает, если клиент указал номер элемента в неупорядоченном списке или запросил несколько элементов в порядке, отличном от серверного.
426 Upgrade Required
Нужно обновление — в заголовке ответа нужно корректно сформировать поля Upgrade и Connection.
Этот ответ возникает, когда серверу требуется обновление до SSL‑протокола, но клиент не имеет его поддержки.
428 Precondition Required
Нужно предварительное условие — сервер просит внести в запрос информацию о предварительных условиях обработки данных, чтобы выдавать корректную информацию по итогу.
429 Too Many Requests
Слишком много запросов — отправлено слишком много запросов за короткое время. Это может указывать, например, на попытку DDoS‑атаки, для защиты от которой запросы блокируются.
431 Request Header Fields Too Large
Превышена длина заголовков — сервер может и не отвечать этим кодом, вместо этого он может просто сбросить соединение.
Исправляется это с помощью сокращения заголовков и повторной отправки запроса.
434 Requested Host Unavailable
Адрес запрашиваемой страницы недоступен.
444 No Response
Нет ответа — код отображается в лог‑файлах, чтобы подтвердить, что сервер никак не отреагировал на запрос пользователя и прервал соединение. Возвращается только сервером nginx.
Nginx — программное обеспечение с открытым исходным кодом. Его используют для создания веб‑серверов, а также в качестве почтового или обратного прокси‑сервера. Nginx решает проблему падения производительности из‑за роста трафика.
449 Retry With
Повторите попытку — ошибка говорит о необходимости скорректировать запрос и повторить его снова. Причиной становятся неверно указанные параметры (возможно, недостаточно данных).
450 Blocked by Windows Parental Controls
Заблокировано родительским контролем — говорит о том, что с компьютера попытались зайти на заблокированный ресурс. Избежать этой ошибки можно изменением параметров системы родительского контроля.
451 Unavailable For Legal Reasons
Недоступно по юридическим причинам — доступ к ресурсу закрыт, например, по требованию органов государственной власти или по требованию правообладателя в случае нарушения авторских прав.
456 Unrecoverable Error
Неустранимая ошибка — при обработке запроса возникла ошибка, которая вызывает некорректируемые сбои в таблицах баз данных.
499 Client Closed Request
Запрос закрыт клиентом — нестандартный код, используемый nginx в ситуациях, когда клиент закрыл соединение, пока nginx обрабатывал запрос.
5* класс кодов (ошибки на стороне сервера)
Эти коды указывают на ошибки со стороны серверов.
При использовании всех методов, кроме HEAD, сервер должен вернуть в теле сообщения гипертекстовое пояснение для пользователя. И его можно использовать в работе.
500 Internal Server Error
Внутренняя ошибка сервера — сервер столкнулся с неким условием, из‑за которого не может выполнить запрос.
Проверяйте, корректно ли указаны директивы в системных файлах (особенно htaccess) и нет ли ошибки прав доступа к файлам. Обратите внимание на ошибки внутри скриптов и их медленную работу.
501 Not Implemented
Не выполнено — код отдается, когда сам сервер не может идентифицировать метод запроса.
Сами вы эту ошибку не исправите. Устранить её может только сервер.
502 Bad Gateway
Ошибка шлюза — появляется, когда сервер, выступая в роли шлюза или прокси‑сервера, получил ответное сообщение от вышестоящего сервера о несоответствии протоколов.
Актуально исключительно для прокси и шлюзовых конфигураций.
503 Service Unavailable
Временно не доступен — сервер временно не имеет возможности обрабатывать запросы по техническим причинам (обслуживание, перегрузка и прочее).
В поле Retry‑After заголовка сервер укажет время, через которое можно повторить запрос.
504 Gateway Timeout
Тайм‑аут шлюза — сервер, выступая в роли шлюза или прокси‑сервера, не получил ответа от вышестоящего сервера в нужное время.
Исправить эту ошибку самостоятельно не получится. Здесь дело в прокси, часто — в веб‑сервере.
Первым делом просто обновите веб‑страницу. Если это не помогло, нужно почистить DNS‑кэш. Для этого нажмите горячие клавиши Windows+R и введите команду cmd (Control+пробел). В открывшемся окне укажите команду ipconfig / flushdns и подтвердите её нажатием Enter.
505 HTTP Version Not Supported
Сервер не поддерживает версию протокола — отсутствует поддержка текущей версии HTTP‑протокола. Нужно обеспечить клиента и сервер одинаковой версией.
506 Variant Also Negotiates
Неуспешные переговоры — с такой ошибкой сталкиваются, если сервер изначально настроен неправильно. По причине ошибочной конфигурации выбранный вариант указывает сам на себя, из‑за чего процесс и прерывается.
507 Insufficient Storage
Не хватает места для хранения — серверу недостаточно места в хранилище. Нужно либо расчистить место, либо увеличить доступное пространство.
508 Loop Detected
Обнаружен цикл — ошибка означает провал запроса и выполняемой операции в целом.
509 Bandwidth Limit Exceeded
Превышена пропускная способность — используется при чрезмерном потреблении трафика. Владельцу площадки следует обратиться к своему хостинг‑провайдеру.
510 Not Extended
Не продлён — ошибка говорит, что на сервере отсутствует нужное для клиента расширение. Чтобы исправить проблему, надо убрать часть неподдерживаемого расширения из запроса или добавить поддержку на сервер.
511 Network Authentication Required
Требуется аутентификация — ошибка генерируется сервером‑посредником, к примеру, сервером интернет‑провайдера, если нужно ввести пароль для получения доступа к сети через платную точку доступа.
-
Категория ~
Что делать (ошибки и проблемы) -
– Автор:
Игорь (Администратор)
Сайты дело такое. В них постоянно что-то корректируется, так сказать живёт и движется. Поэтому нет ничего удивительно в том, что периодически можно столкнуться с кодами и ошибками 301, 302, 303, 304. О том, что эти коды значат и ещё о паре нюансов, и пойдет речь в данном обзоре.
Что значат коды и ошибки 301, 302, 303, 304?
HTTP 301 Moved Permanently (Навсегда перемещен) — этот код означает, что исходный запрошенный браузером документ (веб-страница) полноценно перенесён в другой документ, URL адрес которого указан в HTTP заголовке Location.
Если говорить простыми словами, то суть в следующем. В сайте была страница «page1». Владелец сайта перенёс её в страницу «page2». Пользователь открывает браузер и пытается открыть страницу «page1». Сайт возвращает браузеру код 301 и указывает страницу «page2» в заголовке «Location». Браузер перенаправляет пользователя на страницу «page2». Кстати, само действие, когда пользователя перекидывает с одной страницы в другую, называется редиректом (более подробно смотрите ссылки в конце обзора).
HTTP 302 Moved Temporarily, Found (Временно перемещен) — этот код означает, что исходный запрошенный браузером документ (веб-страница) временно перемещен в другой документ, URL адрес которого указан в HTTP заголовке Location.
Сам механизм крайне схож с предыдущим, но существует одна большая разница. Код и ошибка 302 означает, что страница Временно перенесена. Иными словами, что пользователю не стоит учитывать текущий адрес.
HTTP 303 See Other (Просмотр других ресурсов) — этот код означает, что исходный документ (веб-страница) временно находятся по другому адресу, но обращаться к которому можно только с методом GET.
Небольшая справка: GET — просто запросить страницу. POST — при запросе страницы также отправляются какие-то данные пользователя. Простой пример GET — это вы просто ввели в браузере URL страницы (данные никакие не отправляются). Простой пример POST — это вы открыли страницу, ввели какие-то данные в какую-нибудь формочку и нажали кнопку «Отправить».
Механизм схож с 302, но существует один важный момент, что указанную страницу в Location можно открыть только методом GET. Делается это для того, чтобы данные пользователя точно не отправлялись.
Чтобы лучше понять смысл, рассмотрим ситуацию. Допустим, вы открываете страницу поиска в сайте. Вводите какой-то текст и нажимаете кнопку «Искать». Браузер отправляет POST запрос с текстом поиска. Сервер находит нужную страницу и отправляет клиенту код 303 с URL адресом этой страницы. В таком случае браузер будет открывать эту страницу GET запросом (т.е. текст поиска не будет передаваться, как это было бы при POST запросе).
Кстати, в противовес 303 так же существует код HTTP 307 Temporary Redirect (Временный редирект), который подразумевает передачу как GET, так и POST запроса. По сути, 303 и 307 это конкретизация действий с GET и POST, а смысл у них как у 302.
HTTP 304 Not Modified (Не модифицировано) — этот код передаётся в том случае, когда браузер пользователя при открытии документа (страницы) использовал HTTP заголовок If-Modified-Since (там ещё If-None-Match может быть), в котором указывается дата последней загрузки документа, и документ (веб-страница) не был изменен с указанного времени.
А теперь простыми словами о механизме. Когда пользователь в первый раз открывает страницу, то её содержимое браузер видит впервые, поэтому будет загружать страницу целиком (вместе с картинками, CSS, JS и т.п.). При этом браузер сохранит у себя в кэше эту страницу и её ресурсы (картинки, CSS, JS и т.п.).
Когда же браузер будет открывать страницу второй раз, то логично было бы уточнить у сервера, а нужно ли скачивать эти данные ещё раз или можно использовать те, что браузер уже сохранил у себя в кэше. В частности, CSS и JS обычно редко меняются. Поэтому при вторичном запросе документа (и его отдельных ресурсов) браузер добавляет заголовок If-Modified-Since с датой первой загрузки (и при необходимости If-None-Match). И если документ (или его отдельные ресурсы) не были изменены, то браузер получит код 304 и не будет ничего скачивать.
Подобный подход позволяет экономить трафик и быстрее загружать веб-страницы. В частности, у большинства сайтов существуют ресурсы (CSS, JS и т.п.), которые много весят, но которые практически никогда не меняются (порой даже со времён создания сайта). Соответственно, какой смысл каждый раз их таскать через интернет? В этом случае и применяется 304.
Примечание: Никогда не обращали внимание, что когда в первый раз открываешь сайт, то он грузится чуть медленнее, чем потом, когда открываешь другие его страницы? Это как раз эффект от использования 304.
Про важность редиректов в СЕО (SEO) и коды 301, 302, 303, 307?
Важно понимать, что от того, как вы применяете редиректы с помощью кодов 301, 302, 303 и 307, напрямую зависит качество сео-продвижения вашего сайта. Но сначала пару важных деталей и моментов.
Как поисковики воспринимают код и ошибку 301? Логика элементарна. Если страница полностью перемещена, то значит исходную страницу нужно убрать из поиска и добавить ту, которая указана в Location.
Как поисковики воспринимают код и ошибку 302, 303, 307? Ничего сверхнеожиданного. Если страница временно перемещена, то значит исходную страницу нужно оставить, а ту, которая указана в Location, не учитывать.
А теперь то, почему это важно. Абстрактный пример для понимания. Скажем, существует страница «page1», которая была перенесена в «page2», но вместо 301-го редиректа использовался 302-й. Вы изменили Description (см. обзор мета теги) в странице «page2». Что делать поисковику? 302-й код означает, что это временный перенос. Поэтому с большой вероятностью метаописание поисковик будет брать то, которое было у «page1», а не то, которое у «page2». А вот если использовать 301-й редирект, то поисковик будет брать то описание, которое у «page2».
Отдельно добавлю про 304 и СЕО. Стоит понимать, что поисковые боты также учитывают этот код. Суть в том, что для каждого сайта выделяется некий лимит обхода (абстрактно, 1000 страниц в месяц). А в сайте может быть много веб-страниц (скажем, 10 тысяч, 20 тысяч, 100 тысяч и т.д.). Поэтому если какие-то страницы вообще не меняются или остаются неизменными в течение длительного времени, то использование 304-го кода позволит высвободить часть лимита для обхода других страниц. Это, соответственно, увеличивает скорость индексации и плюс поисковые боты меньше нагружают сайт.
Также советую ознакомиться с обзорами Редирект (redirect) что это и зачем он нужен? и ещё PHP редирект — перенаправление на другую страницу, так как в них больше деталей и практики.
Понравилась заметка? Тогда время подписываться в социальных сетях и делать репосты!
☕ Понравился обзор? Поделитесь с друзьями!
-
Ошибка 503 Service Unavailable: что означает и как исправить?
Что делать (ошибки и проблемы) -
Ошибка 502 Bad Gateway: что означает и как исправить?
Что делать (ошибки и проблемы) -
Ошибка 401 Unauthorized: что означает и как исправить?
Что делать (ошибки и проблемы) -
Что делать если программа не отвечает или как закрыть зависшую программу в Windows
Что делать (ошибки и проблемы) -
Как исправить возникшие проблемы при помощи интерфейса Windows «Устранение неполадок»?
Что делать (ошибки и проблемы) -
Компьютер выходит из спящего режима windows 7, что делать?
Что делать (ошибки и проблемы)