Http response status codes
Содержание:
- What is redirection?
- Классы — HTTP коды состояния
- Откуда они берутся?
- Методы обработки запросов HTTP
- 3xx: Redirection
- 2xx Success
- Codes
- 3хх Перенаправление
- Информационный ответ 1xx
- HTTP Status Codes and How to Understand Them Easily
- 3хх Перенаправление
- Что такое коды состояния HTTP и почему вы их видите?
- Список кодов статуса HTTP
- Checking HTTP Response Codes with redirect online status checker
- Как исправить ошибку 500 на сайте?
What is redirection?
302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)
- HTTP 1.0: 302 status code is «Moved Temporarily» — current page has been moved temporarily to another URL.
- HTTP 1.1: the description phrase has been changed to «Found» — current page has been found.
link juice
Examples of using redirects
Redirecting your domain to a non-www URL:
Redirecting your domain to a www URL:
- which URL ranks higher in the SERPs;
- which URL is more represented in the index.
Redirecting your domain to URL without a slashwww.site.com/cat1www.site.com/cat1To delete the slash from the URLs:
To add the slash to the URLs:
To redirect the user from one page to another:
Redirecting the main page duplicates
Redirecting catalogs
www.site.com/old-catalog
Redirecting (sub-)domains
www.site.orgwww.site.netwww.site.comDeleting multiple slashes/hyphens from the URLswww.site.com/catalog////page-1.htmlwww.site.com/catalog/page-1.html
www.site.com/catalog/page—1.htmlwww.site.com/catalog/page-1.html
Redirecting from any URL to a lowercase URL
- mounting a page-by-page 301 redirect from the old site to the new one;
- don’t set up a redirect from robots.txt — add the Host directive to the new domain instead.
Generating 301 redirects
How to test the 301 redirect
- whether it’s working (check the main page);
- go through the main sections and webpages of the site.
When is it better to use a 301 redirect?
- This is a preferred method by default;
- For pages, that have beenmoved permanently, or their URLs have been changed;
- For domains, if you’ve moved your website to the new domain;
- For 404 pages. For example, if a certain product has been deleted from the catalog, you can set up a redirect to a page with a similar product, or to the URL of the product category.
When is it better to use rel= «canonical»?
- If you can’t set up 301 redirects or it won’t be time-efficient;
- For duplicate content, if you want to keep both versions (for example, pages with different clothing sizes);
- When you have multiple URLs leading to the same page (catalog categories, pages for tracking the traffic from affiliate links, etc.);
- For cross-domain resource sharing, if you want to transfer data between pages that have different origins (domains, for example).
To sum it up
Redirection mistakes
- Redirection chains (avoid them to maximize the speed and the link juice flow of the website);
- Using the wrong type of redirect (to make the right decision, you have to consider all the details);
- Setting up internal redirects without rewriting the URLs of the links. You have to make sure that links on your website don’t lead to pages with the redirect;
- Redirecting to irrelevant pages/content. Your links should always lead either to similar pages or to the section of the site that included the requested page;
- The wrong choice of either rel=canonical or 301 direct (see above);
- Redirecting robots.txt (it’s better to add the Host directive);
- Any redirect, which doesn’t lead to a page with a 200 status code (every link should lead to a properly working page with a 200 status response. Otherwise, don’t confuse the crawlers and just show the 404 Error page).
Essential on-site SEO factors
Классы — HTTP коды состояния
Список кодов состояния HTTP делится на 5 классов:
- 100 : информационные коды, указывающие, что запрос, инициированный браузером, продолжается.
- 200 : коды успеха возвращаются, когда запрос браузера был успешно получен, понят и обработан сервером.
- 300 : коды перенаправления возвращаются, когда новый ресурс заменен запрошенным ресурсом.
- 400 : коды ошибок клиента, указывающие на наличие проблемы с запросом .
- 500 : коды ошибок сервера, указывающие, что запрос был принят, но ошибка на сервере помешала выполнению запроса.
Внутри каждого из этих классов существует множество серверных кодов, которые могут быть возвращены сервером. Каждый отдельный код имеет конкретное и уникальное значение.
Откуда они берутся?
Коды статуса доставляются в браузер в HTTP-заголовке. Хотя вы их не видите. Но когда что-то пошло не так, пользователю отображается код статуса в браузере. Это способ сервера сказать: «Что-то не так. Вот код, который объясняет, что именно».
Код статуса HTTP Google 404
Чтобы увидеть коды статуса, которые браузер обычно не отображает, потребуются специальные инструменты. Для популярных браузеров, таких как Chrome и Firefox, доступны соответствующие расширения. Также существует много сервисов для отображения заголовков, например Web Sniffer.
Чтобы увидеть код статуса HTTP с помощью одного из этих инструментов, найдите строку, расположенную в верхней части отчета, в которой указано: “Status: HTTP/1.1”. После нее указан код статуса, возвращаемый сервером.
Методы обработки запросов HTTP
HTTP метод — это основная операция, которую необходимо выполнить над ресурсом. В названии могут использоваться любые символы, кроме управляющих последовательностей и разделителей, как правило это короткое слово на английском языке. Имена методов HTTP зависимы от регистра.
Любой веб сервер обязан работать, по крайней мере с двумя методами GET и HEAD. Если сервер не смог определить метод, указанный в заголовке запроса клиента, он должен вернуть код статуса 501 (Not Implemented), если-же метод серверу известен, но неприменим к данному ресурсу, будет возвращен код статуса 405 (Method Not Allowed). Как в первом, так и во втором случае, сервер должен включить в свой ответ, заголовок Allow со списком методов, которые он поддерживает.
3xx: Redirection
Message | Description |
---|---|
300 Multiple Choices | A link list. The user can select a link and go to that location. Maximum five addresses . |
301 Moved Permanently | The requested page has moved to a new url . |
302 Found | The requested page has moved temporarily to a new url . |
303 See Other | The requested page can be found under a different url . |
304 Not Modified | This is the response code to an If-Modified-Since or If-None-Match header, where the URL has not been modified since the specified date. |
305 Use Proxy | The requested URL must be accessed through the proxy mentioned in the Location header. |
306 Unused | This code was used in a previous version. It is no longer used, but the code is reserved. |
307 Temporary Redirect | The requested page has moved temporarily to a new url. |
2xx Success
Сообщения данного класса информируют о случаях успешного принятия и обработки запроса клиента. В зависимости от статуса сервер может ещё передать заголовки и тело сообщения. Иначе говоря, данная классификация кодов обозначает, что действие, запрошенное клиентом, было успешно принято в обработку.
200 OK
Этот код, вероятно, является самым популярным, но при этом самым незаметным ввиду его характера. Он означает, что обмен между пользователем и сервером завершен, и все прошло так, как должно было.
Когда этот код может использоваться? В идеале – постоянно!
201 Created
В результате успешного выполнения запроса был создан новый ресурс. Например, запрос пользователя привел к созданию нового ресурса вроде новой страницы. Сервер-источник должен создать ресурс перед тем, как отправлять код 201. Если ресурс не может быть создан в данный момент, то сервер вместо этого должен отобразить код 202 (accepted).
202 Accepted
Запрос был принят на обработку, но она не завершена по каким-либо причинам. Запрос может и не быть выполнен до конца, в зависимости от того, был ли он отклонен в процессе обработки.
Когда этот код может использоваться? Когда сервер не может выполнить запрос в тот момент, в который он был сделан. Запрос изначально не рассчитан на обязательное исполнение, и клиенту не обязательно дожидаться окончательной передачи сообщения, так как может быть начат очень долгий процесс.
203 Non-Authoritative Information
Сервер успешно обработал запрос, но передаваемая информация была взята не из первичного источника (резервной копии, другого сервера и т. д.) и поэтому может быть неактуальной. По сути, этот код очень похож на 200, но указывает на то, что информация была получена не из первоисточника.
Когда этот код может использоваться? Этот код может быть использован вместо 200, когда у отправителя есть причина полагать, что заголовки ответа от постороннего источника могут отличаться от того, что предоставил бы исходный сервер.
204 No Content
Этот код представляет собой ответ, посланный сервером для того, чтобы сообщить, что запрос был получен и понят, но отсутствуют данные, которые можно было отправить пользователю. Это, главным образом, используется для того, чтобы разрешить запуск скриптов, не меняя при этом документ. Данный код не должен содержать тело сообщения, и включается в первую пустую строку кода сразу после заголовка.
Когда этот код может использоваться? Этот код, главным образом, используется для того, чтобы позволить осуществить ввод или какие-либо действия без необходимости обновлять документ (страницу).
205 Reset Content
Сервер успешно обработал запрос, но при этом не возвращает какой-либо контент. В отличие от 204, этот ответ требует от запрашиваемого обновить документ.
Когда этот код может использоваться? Обычно он используется тогда, когда пользователь заполняет форму, а сервер посылает браузеры запрос на очистку формы. Он схож с кодом 204, но просит пользователя сбросить документ после завершения – например, очистить HTML-форму после подтверждения.
206 Partial Reset
Сервер возвращает лишь часть контента, соответствующего заголовку, посланному клиентом. Обычно он используется расширенными инструментами кэширования, когда пользователь запрашивает лишь небольшую часть контента на странице, и сервер в своем ответе предоставляет данные лишь для этой области на странице.
Когда этот код может использоваться? Этот кода обычно используется вследствие запрос If-Range, который применяется в мощных валидаторах кэша. Запрос также должен включать заголовки области, которые используется в качестве параметров диапазона возвратной информации.
207 Multi-Status
Сервер передаёт результаты выполнения сразу нескольких независимых операций, которые помещают в тело сообщения в виде XML-документа.
Codes
Code | Constant | Reason Phrase |
---|---|---|
100 | CONTINUE | Continue |
101 | SWITCHING_PROTOCOLS | Switching Protocols |
102 | PROCESSING | Processing |
200 | OK | OK |
201 | CREATED | Created |
202 | ACCEPTED | Accepted |
203 | NON_AUTHORITATIVE_INFORMATION | Non Authoritative Information |
204 | NO_CONTENT | No Content |
205 | RESET_CONTENT | Reset Content |
206 | PARTIAL_CONTENT | Partial Content |
207 | MULTI_STATUS | Multi-Status |
300 | MULTIPLE_CHOICES | Multiple Choices |
301 | MOVED_PERMANENTLY | Moved Permanently |
302 | MOVED_TEMPORARILY | Moved Temporarily |
303 | SEE_OTHER | See Other |
304 | NOT_MODIFIED | Not Modified |
305 | USE_PROXY | Use Proxy |
307 | TEMPORARY_REDIRECT | Temporary Redirect |
308 | PERMANENT_REDIRECT | Permanent Redirect |
400 | BAD_REQUEST | Bad Request |
401 | UNAUTHORIZED | Unauthorized |
402 | PAYMENT_REQUIRED | Payment Required |
403 | FORBIDDEN | Forbidden |
404 | NOT_FOUND | Not Found |
405 | METHOD_NOT_ALLOWED | Method Not Allowed |
406 | NOT_ACCEPTABLE | Not Acceptable |
407 | PROXY_AUTHENTICATION_REQUIRED | Proxy Authentication Required |
408 | REQUEST_TIMEOUT | Request Timeout |
409 | CONFLICT | Conflict |
410 | GONE | Gone |
411 | LENGTH_REQUIRED | Length Required |
412 | PRECONDITION_FAILED | Precondition Failed |
413 | REQUEST_TOO_LONG | Request Entity Too Large |
414 | REQUEST_URI_TOO_LONG | Request-URI Too Long |
415 | UNSUPPORTED_MEDIA_TYPE | Unsupported Media Type |
416 | REQUESTED_RANGE_NOT_SATISFIABLE | Requested Range Not Satisfiable |
417 | EXPECTATION_FAILED | Expectation Failed |
418 | IM_A_TEAPOT | I’m a teapot |
419 | INSUFFICIENT_SPACE_ON_RESOURCE | Insufficient Space on Resource |
420 | METHOD_FAILURE | Method Failure |
422 | UNPROCESSABLE_ENTITY | Unprocessable Entity |
423 | LOCKED | Locked |
424 | FAILED_DEPENDENCY | Failed Dependency |
428 | PRECONDITION_REQUIRED | Precondition Required |
429 | TOO_MANY_REQUESTS | Too Many Requests |
431 | REQUEST_HEADER_FIELDS_TOO_LARGE | Request Header Fields Too Large |
451 | UNAVAILABLE_FOR_LEGAL_REASONS | Unavailable For Legal Reasons |
500 | INTERNAL_SERVER_ERROR | Internal Server Error |
501 | NOT_IMPLEMENTED | Not Implemented |
502 | BAD_GATEWAY | Bad Gateway |
503 | SERVICE_UNAVAILABLE | Service Unavailable |
504 | GATEWAY_TIMEOUT | Gateway Timeout |
505 | HTTP_VERSION_NOT_SUPPORTED | HTTP Version Not Supported |
507 | INSUFFICIENT_STORAGE | Insufficient Storage |
511 | NETWORK_AUTHENTICATION_REQUIRED | Network Authentication Required |
3хх Перенаправление
Этот класс кодов состояния указывает на дальнейшие действия, которые должны быть предприняты агентом пользователя для того, чтобы завершить запрос. Действия могут производиться пользователей, либо могут включать в себя различные запросы к серверу.
300 Multiple Choices
В основном, этот код сообщает пользователю о том, что ресурс был перемещен, и сервер отвечает списком доступных альтернативных вариантов, среди которых пользователь может выбрать наиболее подходящий ему ресурс.
Когда этот код может использоваться? Обычно этот код можно увидеть, когда сервер считает, что предоставленный пользователем (другими словами, браузером пользователя) URL имеет недостаточно точный указатель, и предлагает дальнейший выбор. Обычно это происходит тогда, когда пользователь использует URL на директорию не самого последнего уровня, и сервер предлагает ему выбор имеющихся файлов или директорий последующего уровня.
301 Moved Permanently
Когда этот код может использоваться? Когда страница более не существует, либо ссылка, ведущая на сторонний источник, уже не работает. 301 редирект сообщает пользователю о том, что запрашиваемый ресурс был перемещен (обычно это реализуется при помощи файла .htaccess, доступного на серверах Apache).
302 Found
Когда этот код может использоваться? У этого кода есть несколько применений, многие из которых не являются тем, для чего код был изначально предназначен. Изначально он представлял собой основной способ создания временного перенаправления. Тем не менее, сегодня существуют и другие – этичные, и неэтичные – способы его применения.
303 See Other
Этот код указывает пользователю на то, что запрашиваемый ресурс можно найти по URL, который отличается от указанного в запросе. Это не обязательно означает, что что-то было перемещено, это код лишь предоставляет адрес, по которому следует запрашивать подобный ответ.
Когда этот код может использоваться? Этот метод главным образом существует для того, чтобы позволить выводу данных POST-активированного скрипта перенаправить агента пользователя к выбранному ресурсу.
304 Not Modified
Этот код означает, что пользователь запрашивает документ/ресурс только в том случае, если он подвергался изменениям с момента последнего обновления кэша данного документа.
Когда этот код может использоваться? Если в ответе от сервера сообщается о том, что параметры документа If-Modified-Since или If-Match не менялись с момента создания последнего кэша, то нет необходимости в повторной отправке ресурса.
305 Use Proxy
Этот код сообщает пользователю, что доступ к запрашиваемому ресурсу возможен только посредством прокси, указанного в ответе.
Когда этот код может использоваться? Этот код часто отображается в связи с мерами безопасности, и предоставляет доступ к запрашиваемым URL-ресурсам.
306 Switch Proxy
Этот код изначально означал «последующие запросы должны использовать указанный прокси», но в данный момент не используется и зарезервирован.
307 Temporary Redirect
Этот код возвращается, если ресурс на данный момент временно доступен по другому URL, который также предоставляется в ответе. Этот код немного отличается от кода 302 – он представляет собой более определенную версию кода 302.
Когда этот код может использоваться? Он используется практически в тех же случаях, что и 302, но пользователь должен продолжить запросы по исходному URL при следующих запросах, либо до тех пор, пока не будет применен новых код ответа.
Информационный ответ 1xx
Информационный ответ означает, что запрос был получен и понят. Он выдается на временной основе, пока продолжается обработка запроса. Он предупреждает клиента, чтобы он дождался окончательного ответа. Сообщение состоит только из строки состояния и необязательных полей заголовка и заканчивается пустой строкой. Поскольку в стандарте HTTP / 1.0 не определены коды состояния 1xx, серверы не должны отправлять ответ 1xx клиенту, совместимому с HTTP / 1.0, за исключением экспериментальных условий.
- 100 Продолжить
- Сервер получил заголовки запроса, и клиент должен перейти к отправке тела запроса (в случае запроса, для которого необходимо отправить тело; например, запрос POST ). Отправка большого тела запроса на сервер после того, как запрос был отклонен из-за несоответствующих заголовков, будет неэффективен. Чтобы сервер проверил заголовки запроса, клиент должен отправить как заголовок в своем первоначальном запросе и получить код состояния в ответ перед отправкой тела. Если клиент получает код ошибки, такой как 403 (Запрещено) или 405 (Метод запрещен), он не должен отправлять тело запроса. В ответе указано, что запрос следует повторить без заголовка, поскольку он указывает на то, что сервер не поддерживает ожидания (например, в случае серверов HTTP / 1.0).
- 101 протокол переключения
- Запрашивающая сторона попросила сервер переключить протоколы, и сервер дал согласие на это.
- 102 Обработка ( WebDAV ; RFC 2518)
- Запрос WebDAV может содержать множество подзапросов, связанных с файловыми операциями, для выполнения которых требуется много времени. Этот код указывает, что сервер получил и обрабатывает запрос, но ответа пока нет. Это предотвращает тайм-аут клиента и предположение, что запрос был потерян.
- 103 Ранние подсказки (RFC 8297)
- Используется для возврата некоторых заголовков ответа перед окончательным HTTP-сообщением.
HTTP Status Codes and How to Understand Them Easily
HTTP Status Codes – The communication between a user’s browser and the web server is very much like two people talking. When a user types a URL and hits Enter, the browser sends a series of messages – known as HTTP requests – to the server. Upon listening to those requests, the server will then reply with what we know as HTTP status codes, to which the browser reacts accordingly. Whether the page gets loaded or an error message is displayed, both the client and the server are communicating in this pattern. Some HTTP status codes are more known than others. In this article, however, we are going to review the full list of HTTP status codes and how to understand them.
3хх Перенаправление
Этот класс кодов состояния указывает на дальнейшие действия, которые должны быть предприняты агентом пользователя для того, чтобы завершить запрос. Действия могут производиться пользователей, либо могут включать в себя различные запросы к серверу.
300 Multiple Choices
В основном, этот код сообщает пользователю о том, что ресурс был перемещен, и сервер отвечает списком доступных альтернативных вариантов, среди которых пользователь может выбрать наиболее подходящий ему ресурс.
Когда этот код может использоваться? Обычно этот код можно увидеть, когда сервер считает, что предоставленный пользователем (другими словами, браузером пользователя) URL имеет недостаточно точный указатель, и предлагает дальнейший выбор. Обычно это происходит тогда, когда пользователь использует URL на директорию не самого последнего уровня, и сервер предлагает ему выбор имеющихся файлов или директорий последующего уровня.
301 Moved Permanently
Когда этот код может использоваться? Когда страница более не существует, либо ссылка, ведущая на сторонний источник, уже не работает. 301 редирект сообщает пользователю о том, что запрашиваемый ресурс был перемещен (обычно это реализуется при помощи файла .htaccess, доступного на серверах Apache).
302 Found
Когда этот код может использоваться? У этого кода есть несколько применений, многие из которых не являются тем, для чего код был изначально предназначен. Изначально он представлял собой основной способ создания временного перенаправления. Тем не менее, сегодня существуют и другие – этичные, и неэтичные – способы его применения.
303 See Other
Этот код указывает пользователю на то, что запрашиваемый ресурс можно найти по URL, который отличается от указанного в запросе. Это не обязательно означает, что что-то было перемещено, это код лишь предоставляет адрес, по которому следует запрашивать подобный ответ.
Когда этот код может использоваться? Этот метод главным образом существует для того, чтобы позволить выводу данных POST-активированного скрипта перенаправить агента пользователя к выбранному ресурсу.
304 Not Modified
Этот код означает, что пользователь запрашивает документ/ресурс только в том случае, если он подвергался изменениям с момента последнего обновления кэша данного документа.
Когда этот код может использоваться? Если в ответе от сервера сообщается о том, что параметры документа If-Modified-Since или If-Match не менялись с момента создания последнего кэша, то нет необходимости в повторной отправке ресурса.
305 Use Proxy
Этот код сообщает пользователю, что доступ к запрашиваемому ресурсу возможен только посредством прокси, указанного в ответе.
Когда этот код может использоваться? Этот код часто отображается в связи с мерами безопасности, и предоставляет доступ к запрашиваемым URL-ресурсам.
306 Switch Proxy
Этот код изначально означал «последующие запросы должны использовать указанный прокси», но в данный момент не используется и зарезервирован.
307 Temporary Redirect
Этот код возвращается, если ресурс на данный момент временно доступен по другому URL, который также предоставляется в ответе. Этот код немного отличается от кода 302 – он представляет собой более определенную версию кода 302.
Когда этот код может использоваться? Он используется практически в тех же случаях, что и 302, но пользователь должен продолжить запросы по исходному URL при следующих запросах, либо до тех пор, пока не будет применен новых код ответа.
Что такое коды состояния HTTP и почему вы их видите?
Код состояния HTTP – это сообщение, которое посылается сервером при отправке запроса с браузера, о том, может ли быть выполнен запрос или нет. Согласно официальной спецификации W3C, существуют десятки кодов состояния, со многими из которых вы вряд ли столкнетесь. А если столкнетесь, полный обзор возможных вариантов можно посмотреть на HTTPstatuses.com.
Чтобы понять эти коды, вам стоит знать, как браузер получает веб-страницу.
Добраться до веб-сайта пользователь может двумя способами – набрав URL сайта или введя запрос в строке поиска. После этого браузер посылает запрос на IP-адрес сайта, для получения соответствующей веб-страницы. Сервер отвечает браузеру, отправляя код состояния, встроенный в заголовок HTTP. Когда все нормально, код заголовка HTTP 200 отправляется обратно в браузер, вместе с запрошенным контентом.
Однако с запрашиваемым контентом или сервером что-то может быть не так. Например, не найдена страница (тогда возвращается код ошибки 404) или есть временная техническая проблема с сервером, в результате чего появляется код внутренней ошибки сервера 500. Эти коды статуса HTTP – важные инструменты для оценки состояния здоровья сайта и его сервера. Если сайт регулярно посылает неправильные коды заголовка HTTP в поисковую систему, его содержимое не индексируется, что, в свою очередь, вредит рейтингу.
Список кодов статуса HTTP
Существует более 40 различных кодов статуса сервера. Но тех, с которыми вы будете сталкиваться регулярно меньше дюжины. Ниже приводится список кодов статуса HTTP:
Код статуса 200 (код страницы 200)
200: «Все в порядке». Это код, который возвращается, когда веб-страница или ресурс действуют точно так, как ожидается.
Коды статуса 300
301: «Запрошенный ресурс был перемещен навсегда». Этот код возвращается, когда веб-страница или ресурс заменяется другим ресурсом. Он используется для постоянного редиректа URL-адресов.
302: это http-ошибка «Запрошенный ресурс перемещен, но был найден». Этот код используется для указания того, что запрошенный ресурс был найден, но не в том месте, где это ожидалось. Он используется для временного редиректа URL-адресов.
304: «Запрошенный ресурс не был изменен с момента последнего обращения к нему». Сообщает, что ресурсы, хранящиеся в кэше браузера, не изменились. Он используется для ускорения доставки веб-страниц за счет повторного использования ранее загруженных ресурсов.
Коды статуса 400
401: «Не авторизован». Возвращается сервером, когда для доступа к целевому ресурсу отсутствуют валидные учетные данные.
http-ошибка 403: «Доступ к этому ресурсу запрещен». Возвращается, когда пользователь пытается открыть ресурс, для которого у него нет прав доступа. Например, попытка просмотра неавторизованным пользователем контента, защищенного паролем, может привести к ошибке 403.
404: «Запрошенный ресурс не найден». Наиболее распространенное сообщение об ошибке. Означает, что запрошенный ресурс не существует и сервер не знает, существовал ли он когда-либо.
405: «Метод не разрешен». Генерируется, когда хостинг-сервер (исходный сервер) поддерживает полученный метод, но целевой ресурс отсутствует.
406: «Неприемлемый ответ». Запрошенный ресурс способен генерировать только контент, неприемлемый в соответствии с заголовками Accept, отправленными в запросе.
408: «Время ожидания сервером поступления остальной части запроса из браузера истекло». Генерируется, когда сервер прерывает обработку после истечения времени ожидания полного запроса от браузера. Другими словами, сервер не получил полный запрос, отправленный браузером. Одной из возможных причин может быть перегрузка сети, приводящая к потере пакетов между браузером и сервером.
410: «Запрошенный ресурс отсутствует и не будет возвращен». Подобен коду 404 «Не найден», за исключением того, что код статуса 410, указывает, что данный статус ожидается на постоянной основе.
429: это http-ошибка «Слишком много запросов». Генерируется сервером, когда пользователь отправил слишком много запросов в заданный промежуток времени (ограничение по скорости). Иногда причиной ошибки могут быть боты, пытающиеся получить доступ к сайту. В этом случае может потребоваться изменение URL-адреса входа в панель администрирования WordPress.
429 слишком много запросов (http error 429)
499: «Клиент закрыл запрос». Возвращается NGINX, когда клиент закрывает запрос, пока NGINX все еще обрабатывает его.
Коды статуса 500
500: «На сервере возникла ошибка, и запрос не мог быть завершен». Общий http-код, который также называют «внутренняя ошибка сервера». На сервере что-то пошло не так и запрошенный ресурс не был доставлен. Этот код генерируется сторонними плагинами, при сбоях PHP-кода или подключения к базе данных.
Ошибка при установлении соединения с базой данных
501: «Не реализовано». Эта ошибка указывает на то, что сервер не поддерживает функции, необходимые для выполнения запроса. Ошибка почти всегда связана с самим сервером, и для ее решения нужно обратиться в службу поддержки хостинг-провайдера.
502: это http-ошибка «Некорректный шлюз». Означает, что один сервер получил неверный ответ от другого. Иногда запрос занимает слишком много времени, и поэтому отменяется или удаляется сервером, а соединение с базой данных прерывается.
503: это http-ошибка «В данный момент сервер не может обработать запрос». Запрос не может быть обработан прямо сейчас. Этот код возвращается перегруженным сервером, который не может обрабатывать новые запросы.
504: «Сервер, действующий как шлюз, не смог дождаться ответа от другого сервера». Возвращается, когда в обработке запроса было задействовано два сервера, и на первом сервере истекло время ожидания ответа от второго.
Checking HTTP Response Codes with redirect online status checker
There are resources on how to check HTTP status codes issued by the server. You can use any browser with Developer Tools and monitor the way a page is loaded – or a process is completed – to get a series of response codes. For a more accurate reading, however, using an HTTP status code checker is the best way to go. When you get HTTP server status code check done, there are a few benefits to enjoy (and a number of things to learn):
The HTTP status codes check will also help you understand more about the errors, because you can access the full server response and learn more from it.
Don’t forget that you can scan for loops or unnecessary redirects using the HTTP status code checker too. Now that you know how to understand the different codes and how to check HTTP status codes, it’s time to take advantage of these codes further. Use the detailed guide we have covered in this article to help you understand your web application and your server even more.
Как исправить ошибку 500 на сайте?
Мы уже выяснили, что такое 500 internal server error и причины ее возникновения, поэтому теперь давайте поговорим о том, как исправить ошибку 500 на сайте.
Супер-крутыми знаниями программирования для исправления error 500 на сайте обладать не нужно, достаточно просто прочитать данный раздел статьи предельно внимательно.
Для этого мы рассмотрим 3 следующих способа:
- Самостоятельно исправить ошибку 500 internal server error на сайте;
- Найти фрилансера или обратиться в веб-студию для исправления ошибки 500;
- Обратиться к хостинг-провайдеру за помощью (консультацией).
Один из этих способов вам точно поможет, а если нет — вы знаете, где меня искать:) Просто напишите мне в Twitter и я постараюсь помочь вам разобраться с этой ошибкой.
Самостоятельно исправить ошибку 500 на сайте
Если вы решили самостоятельно исправлять ошибку 500 на веб-сайте, то для этого в первую очередь посмотрите логи веб-сервера. Например, на моем хостинге установлена cPanel, в ней я могу посмотреть последние 300 ошибок сервера Apache в любое время дня и суток.
В связи с этим, если на вашем хостинге тоже установлена cPanel, то тогда перейдите в панель управления, затем найдите в ней раздел «Ошибки» и перейдите туда для просмотра логов веб-сервера Apache. Для ISP manager смотрите видео, опубликованное чуть выше.
Ну, а если error 500 связана с ошибками выполнения PHP-скриптов, то тогда в этом случае вам поможет файл error_log. Обычно данный файл располагается в одной директории с тем PHP-скриптом, при выполнении которого была допущена ошибка.
Сразу хочу отметить то, что у вас не получиться открыть файл error_log на хостинге, если его размер превысит 1 MB. В таком случае просто скачайте данный файл к себе на компьютер и затем откройте его с помощью встроенного блокнота или текстового редактора.
Внутри файла error_log вы обнаружите примерно следующую картину:
ПРИЧИНА ОШИБКИ: PHP Parse error: syntax error, unexprected ‘shoppmilano’ (T_STRING) in /home/shoppmil/public_html/w-content/themes/professional/inc/customizer.php on line 423.
— И как нам это понимать?
- syntax error — это говорит о том, что ошибка синтаксическая.
- /home/shoppmil/public_html/w-content/themes/professional/inc/customizer.php — это полный путь к файлу, в котором была вызвана данная ошибка.
- on line 423 — это строка, в которой содержаться ошибка.
С помощью этих логов вы узнаете, где именно произошла внутренняя ошибка сервера, из-за которой лег весь сайт. К тому же, в данном файле также отображаются ошибки, связанные с файлом .htaccess и это в несколько раз сократит ваше время на их поиски.
Обратиться к хостинг-провайдеру за помощью
В том случае, если вы не найдете файл error_log и у вас не отображаются последние 300 ошибок веб-сервера Apache в панели управления хостингом, то тогда следует как можно скорее обратиться в тех. поддержку вашего хостинг-провайдера.
Системный администратор лично посмотрит все логи и укажет вам на то, какой именно файл и в какой строчке кода совершена ошибка. Относительно сервера, сисадмин сам все исправит, но в код вашего сайта он лесть конечно же не будет.
Еще я рекомендую вам попросить тех. поддержку скинуть вам логи, т. к. они вам понадобятся для самостоятельного исправления ошибки 500. Эти же логи вы сможете предоставить веб-разработчику и тогда ему не придется часами ломать голову.
Найти фрилансера для исправления ошибки 500
Допустим, у вас по каким-то причинам нет времени копаться в коде и разбираться с тем, чем именно была вызвана ошибка 500 internal server error. В таком случае можно обратиться к фрилансерам на какой-нибудь бирже, типа FL.ru, Kwork или Weblancer.
За 500 руб. ребята с любой биржи фриланса с огромным удовольствием исправят любые ошибки на вашем сайте — это я вам, как бывший фрилансер утверждаю. Тупо опубликуйте задание или обратитесь к ТОП’овому исполнителю и вам сделают все в лучшем виде.