Что такое ошибка http 302 и как ее исправить? [4 протестированных метода объяснено]
Содержание:
- Как исправить ошибку HTTP 429
- Исправление 500 ошибки сервера на вашем собственном сайте
- Для чего нужен HTTP
- 4xx: Ошибки клиента¶
- Пример кода статуса в заголовке curl
- Список кодов статуса HTTP
- Где перечислять HTTP-ответ и коды ошибок
- 2019
- Migrating from v1.x.x
- 5 последних уроков рубрики «Разное»
- Где взять коды ошибок и статусы
- 3xx: Redirection
- What does a 3xx Redirection code mean?
Как исправить ошибку HTTP 429
- Подождите, чтобы отправить еще один запрос.
- Реализуйте экспоненциальную отсрочку.
- Установите свой собственный предел дросселирования.
- Свяжитесь с вашим хостинг-провайдером.
Большинство приведенных ниже шагов направлены на предотвращение, а не на исправление ошибки HTTP 429 задним числом. Взглянуть.
1 Дождитесь отправки другого запроса.
Самый простой способ исправить ошибку HTTP 429 – дождаться отправки другого запроса. Часто этот код состояния отправляется с заголовком «Retry-after», который указывает период времени ожидания перед отправкой другого запроса. Он может указывать всего несколько секунд или минут.
Вот пример, который просит клиента подождать час перед отправкой другого запроса.
2 Реализуйте экспоненциальный откат.
Если заголовок «Retry-after» не отправляется, и вы не знаете, сколько времени ждать перед попыткой, вам следует реализовать повторные попытки с экспоненциальным откатом. Используя этот подход, ваше приложение не будет немедленно повторять неудавшийся запрос; вместо этого он выполнит серию повторных попыток с постепенно увеличивающимся временем ожидания между каждой попыткой. Когда запрос будет окончательно принят, вы узнаете, какое время или скорость ожидания приемлемы.
Вы можете добавить код для реализации этого подхода или использовать такой инструмент, как который имеет встроенную функцию экспоненциальной задержки.
3 Установите свой собственный предел дросселирования.
Регулирование – это процесс ограничения количества запросов, которые приложение может отправить за определенный промежуток времени. Если этот предел превышен, запросы к серверу или API обычно отбрасываются или выполняются с кэшированными данными.
Хотя этот подход чаще всего используется сторонними API или платформами для предотвращения превышения клиентскими приложениями своих ограничений, он также может быть полезен для ограничения вашего собственного потребления сторонних API или ресурсов сервера. Фактически, вы можете установить более строгий лимит регулирования для себя, чтобы предотвратить выход за пределы сервера, API или другой службы, которую вы используете. Это особенно хорошая идея, если вы используете дорогостоящий API, например Twitter API, и не хотите выходить за рамки своей политики использования.
4 Свяжитесь с вашим хостинг-провайдером.
Обращение к вашему хостинг-провайдеру – это всегда вариант для любой ошибки на вашем веб-сайте, но это должен быть один из последних вариантов, которые вы пробовали.
Если вы попробовали описанные выше действия и по-прежнему видите ошибку 429, возможно, причина возникла на вашем сервере, а не на вашем веб-сайте. Также возможно, что ваш хост блокирует запросы от определенных сторонних сервисов или платформ, таких как Google Search Console, которая делает множество запросов к веб-сайтам. Обратившись к вашему провайдеру, он может решить проблему или предоставить ценную информацию.
Исправление 500 ошибки сервера на вашем собственном сайте
Внутренняя ошибка сервера 500 на вашем собственном сайте требует совершенно другого подхода. Как мы упоминали выше, большинство из 500 ошибок являются ошибками на стороне сервера, а это, вероятно, ваша проблема, которую нужно исправить, если это ваш сайт.
Существует множество причин, по которым ваш сайт может показывать пользователям 500 ошибку, вот наиболее распространенные:
- Ошибка разрешений. В большинстве случаев ошибка 500 Internal Server Error связана с неправильным разрешением для одного или нескольких файлов или папок. В большинстве случаев, неправильное разрешение случается на PHP и на CGI. Обычно они должны быть установлены на 0755 (-rwxr-xr-x).
- Тайм-аут PHP. Если ваш сценарий подключения к внешним ресурсам и время ожидания этих ресурсов может привести к ошибке HTTP 500. Правила тайм-аута или лучшая обработка ошибок в вашем скрипте должны помочь, если это является причиной ошибки 500.
- Ошибка кодирования в .htaccess. Хотя это не так часто, убедитесь, что файл .htaccess вашего сайта правильно структурирован.
Как сделать резервную копию Windows — самые лучшие способы
Если вы используете WordPress, Joomla или другую систему управления контентом или CMS, обязательно поищите в их центрах поддержки более конкретную помощь по устранению неисправности 500 Internal Server Error.
Коды ошибки 500: основные внутренние ошибки сервера | |
---|---|
Код | объяснение |
500,0 | Произошла ошибка модуля или ISAPI. |
500,11 | Приложение закрывается на веб-сервере. |
500,12 | Приложение занято перезагрузкой на веб-сервере. |
500,13 | Веб-сервер слишком занят. |
500,15 | Прямые запросы на Global.asax не допускаются. |
500,19 | Данные конфигурации неверны. |
500,21 | Модуль не распознан. |
500,22 | Конфигурация ASP.NET httpModules не применяется в режиме управляемого конвейера. |
500,23 | Конфигурация ASP.NET httpHandlers не применяется в режиме управляемого конвейера. |
500,24 | Конфигурация олицетворения ASP.NET не применяется в режиме управляемого конвейера. |
500,50 | Произошла ошибка перезаписи во время обработки уведомления RQ_BEGIN_REQUEST. Произошла ошибка выполнения конфигурации или входящего правила. |
500,51 | Произошла ошибка перезаписи во время обработки уведомления GL_PRE_BEGIN_REQUEST. Произошла глобальная конфигурация или ошибка выполнения глобального правила. |
500,52 | Произошла ошибка перезаписи во время обработки уведомления RQ_SEND_RESPONSE. Выполнение исходящего правила. |
500,53 | Произошла ошибка перезаписи во время обработки уведомления RQ_RELEASE_REQUEST_STATE. Произошла ошибка выполнения правила для исходящих сообщений. Правило настроено для выполнения до обновления выходного пользовательского кэша. |
500,100 | Внутренняя ошибка ASP. |
Ошибки в работе мобильных операторов – нечастая проблема, однако эта ошибка часто выскакивает у пользователей компании Мегафон. Любая ошибка может мешать корректной работе не только самого пользователя, но и компании. Чаще всего вылетает ошибка под названием «Ошибка 500». Часто она связано с тем, что персональные данные не могут обработаться по адекватной скорости, поэтому сервер сильно перегружен и клиент не может нормальной зайти в свой личный кабинет.
Для чего нужен HTTP
Благодаря взаимодействию клиента (локального компьютера с браузером) и сервера (высокопроизводительного специального компьютера) в сети можно передавать данные. Изначально HTTP использовался только для гипертекстовых документов, но сейчас он может передавать любую информацию. Гипертекстовые документы также могут содержать гиперcсылки, при нажатии на которые формируется новый http-запрос, в ответе на который может содержаться другой гипертекстовый документ. Таким образом мы перемещаемся по страницам в интернете.
Как он работает
HTTP-запрос состоит из трех элементов:
- стартовой строки, которая задает параметры запроса или ответа,
- заголовка, который описывает сведения о передаче и другую служебную информацию.
- тело (его не всегда можно встретить в структуре). Обычно в нем как раз лежат передаваемые данные. От заголовка тело отделяется пустой строкой.
Важнейшим элементом структуры запроса является стартовая строка. Благодаря ей сервер понимает, что от него хотят. Вот как она устроена:
Метод + URI + HTTP/Версия
Метод (иногда его называют HTTP-глаголом) – описывает, какое именно действие нужно совершить со страницей. Можно придумать самые разные, но стандартных методов девять: GET, HEAD, POST, PUT, DELETE,CONNECT, OPTIONS, TRACE, PATCH. Их функциональность раскрывается в названии, они позволяют получить данные (GET), отправить данные на сервер (POST), удалить (DELETE) или заменить часть (PATCH).
URI (Uniform Resource Locator) – единообразный идентификатор ресурса, идентифицирует ресурс и определяет его точное местоположение. Именно с помощью URL записаны ссылки в интернете.
В отличие от него URN не ведет к конкретному адресу, а просто определяет ресурс во множестве терминов. Потенциально это удобно, чтобы не перегружать интернет устаревшими или пропавшими ссылками.
Версия показывает, какую версию протокола нужно использовать в ответе сервера.
HTTP-ответ строится примерно по тому же принципу, что и запрос:
HTTP/Версия + Код состояния + Пояснение
Версия совпадает с версией в запросе.
Код состояния показывает статус запроса. Это трехзначное число, благодаря которому можно узнать, получен ли запрос, обработан ли он, какие ошибки есть. Например, одна из самых известных ошибок – 404 – сообщает о том, что сервер не нашел ресурс по адресу. Возможно, в запросе опечатка, ошибка или он не соответствует протоколу.
В пояснении стоит краткое описание ответа, например, к той же ошибке 404 может добавляться Not Found, что и раскрывает суть статуса запроса.
Курс
Этичный хакер
Начните с программирования на Python и JavaScript, изучите Linux и Windows и освойте тестирование на проникновение. Скидка 5% по промокоду BLOG.
Узнать больше
4xx: Ошибки клиента¶
Статус кода | Сообщение | Описание |
---|---|---|
400 | Bad Request | Некорректный запрос Запрос не может быть обработан, поскольку содержит синтаксическую ошибку. |
401 | Unauthorized | Не авторизован Запрос обрабатывается, но доступ к запрашиваемому ресурсу не предоставляется, поскольку клиент не авторизован |
402 | Payment Required | Не используетсяЗарезервирован для использования в будущем. |
403 | Forbidden | Запрещено Сервер понял запрос, но он не выполняет его из-за ограничений прав доступа к указанному ресурсу |
404 | Not Found | Не найдено Запрашиваемая страница не найдена. Сервер понял запрос, но не нашёл соответствующего ресурса по указанному URL (Самая распространенная ошибка в Интернете, возникает из-за неправильно указанного URL). |
405 | Method Not Allowed | Mетод не поддерживается Запрос был сделан методом, который не поддерживается данным ресурсом. |
406 | Not Acceptable | Не принимается Сервер может сгенерировать только такой ответ, который клиент не принимает. (например, на другом языке). |
407 | Proxy Authentication Required | Требуется аутентификация прокси Ответ аналогичен коду 401 за исключением того, что аутентификация производится для прокси-сервера |
408 | Request Timeout | Время ожидания истеклоЗапрос клиента к серверу занял слишком много времени. |
409 | Conflict | Конфликт Запрос не может быть обработан по причине конфликта с другим запросом или конфигурацией сервера |
410 | Gone | Недоступен Доступный по указанному URL раньше был доступен, но был удалён или недоступен. |
411 | Length Required | Нужна длина Длина контента не определена, и сервер не принимает запрос без этого. Повторный запрос должен содержать заголовок «Content-Length». |
412 | Precondition Failed | Не выполнено предварительное условие Предварительное условие, указанное в запросе, не было выполнено. |
413 | Request Entity Too Large | Слишком большой запрос Размер запроса превышает максимальный размер запроса, принимаемого сервером. |
414 | Request-URI Too Long | Слишком длинный URIСерверу не удается обработать запрос по причине длинного URI. Такая ошибка может возникнуть, когда клиент пытается передать длинные параметры через метод GET, а не POST. |
415 | Unsupported Media Type | Неподдерживаемый формат Формат не поддерживается, и сервер не может принять запрос. |
416 | Requested Range Not Satisfiable | Недопустимый диапазон Диапазон байтов, запрошенный клиентом, находится за пределами ресурса |
417 | Expectation Failed | Ожидания не оправдались Сервер не может удовлетворить требования заголовка Expect, так как поле заголовка не соответствует ожиданиям. |
Пример кода статуса в заголовке curl
Коды статусов не отображаются в тебе ответа. Они содержатся в хэдере, который может быть не видим по умолчанию.
Помните, когда мы отправляли обратный вызов в разделе ? Чтобы получить заголовок ответа, добавляем –include или -i к запросу curl. Если нужно, чтобы в ответе возвращался только заголовок ответа (и ничего больше), используем заглавную букву -I, например:
Заголовок ответа выглядит следующим образом:
Первая строка, , сообщает нам статус запроса (). Большинство API REST следуют стандартному протоколу для заголовков ответов. Например, — это не просто произвольный код, выбранный разработчиками OpenWeatherMap API. — это общепринятый код для успешного HTTP-запроса. (Если изменить метод, то получим другой код состояния.)
С помощью запроса GET довольно легко определить, успешен ли запрос, потому что получаем ожидаемый ответ. Но предположим, делаем запрос POST, PUT или DELETE, когда мы меняем данные, содержащиеся в ресурсе. Как узнать, был ли запрос успешно обработан и получен API? Коды ответа HTTP в заголовке ответа будут указывать, была ли операция успешной. Коды состояния HTTP — это просто сокращения длинных сообщений.
Коды состояния довольно тонкие, но когда разработчик работает с API, коды могут быть единственным «интерфейсом», который имеет разработчик. Если получится контролировать сообщения, которые видит разработчик, это будет большой победой юзабилити
Слишком часто коды состояния неинформативны, плохо написаны и сообщают мало или вообще никакой полезной информации пользователю для преодоления ошибки. По большому счету, коды состояния должны помогать пользователям в восстановлении после ошибок.
Можно посмотреть список общих кодов состояния REST API здесь и общий список кодов HTTP статусов здесь. Хотя, возможно, было бы полезно включить несколько стандартных кодов состояния, нет необходимости в полном документировании всех стандартных кодов состояния, особенно если они редко запускаются в API.
Список кодов статуса 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: «Сервер, действующий как шлюз, не смог дождаться ответа от другого сервера». Возвращается, когда в обработке запроса было задействовано два сервера, и на первом сервере истекло время ожидания ответа от второго.
Где перечислять HTTP-ответ и коды ошибок
Практичнее, если API будут иметь одну страницу с ответами и кодами ошибок ко всему API. Отдельная страница с перечнем кодов состояния (вместо добавления кода состояния в каждую конечную точку) позволяет более детально описать каждый код без переполнения других частей документации. Такой подход уменьшает избыточность и ощущение информационной перегрузки.
С другой стороны, если какие-то коды состояния и ошибок больше подходят к определенным конечным точкам, чем другие, имеет смысл вывести такие коды состояния и ошибок на страницы с описаниями конечных точек.
Такая стратегия может заключаться в том, чтобы привлечь внимание к каким-либо особенно важным кодам состояния или ошибок для конкретной конечной точки, а затем перейти к централизованной странице «Коды ответов и состояний» для получения полной информации
2019
Google придумала, как заставить сайты перейти на HTTPS
Начиная с 2010 года, корпорация изменит свое отношение к сайтам, полностью не перешедшим на HTTPS и продолжающим загружать некоторые ресурсы страниц (например, видео, аудио, изображения и скрипты) по HTTP.
Загружаемые сайтами ресурсы по HTTPS и по HTTP называются «смешанным контентом» и представляют собой проблему с самого первого дня внедрения HTTPS
В течение нескольких лет браузеры игнорировали проблему «смешанного контента», для них было важно лишь, чтобы главный домен загружался по HTTPS.. Тем не менее, в последнее время компании Google и Mozilla, каждая по своему, активно продвигают HTTPS
Mozilla и ее партнеры запустили сервис Let’s Encrypt, предоставляющий бесплатные, простые в развертывании TLS-сертификаты. В свою очередь, Google Chrome стал обозначать загружаемые по HTTP сайты как небезопасные (Not Secure).
Тем не менее, в последнее время компании Google и Mozilla, каждая по своему, активно продвигают HTTPS. Mozilla и ее партнеры запустили сервис Let’s Encrypt, предоставляющий бесплатные, простые в развертывании TLS-сертификаты. В свою очередь, Google Chrome стал обозначать загружаемые по HTTP сайты как небезопасные (Not Secure).
Теперь же Google намерена пойти еще дальше и заставить сайты полностью перейти на HTTPS. Начиная с версии Chrome 79, в браузер постепенно будут вноситься изменения, которые в итоге приведут к полной блокировке «смешанного контента» по умолчанию. Уже в Chrome 80 «смешанные» аудио и видео будут автоматически обновляться до HTTPS. В случае невозможности загрузки контента по HTTPS, он будет блокироваться. В Chrome 81 этот подход будет также применяться к «смешанным» изображениям.
Власти Казахстана перехватывают трафик Facebook, Google и «ВКонтакте»
Спустя неделю после того, как правительство Казахстана начало перехватывать весь HTTPS-трафик, стали известны некоторые подробности о происходящем в стране. Подробнее здесь.
Правительство Казахстана начало перехватывать весь HTTPS-трафик в стране
17 июля 2019 года правительство Казахстана начало перехватывать весь интернет-трафик HTTPS в стране. Для этого местных телекоммуникационных операторов обязали к тому, чтобы заставлять пользователей на все свои устройства и в браузеры специальный сертификат, разработанный властями.
После установки сертификата правительственные органы Казахстана смогут расшифровывать HTTPS-трафик пользователей, просматривать его содержимое, снова шифровать его с помощью своего сертификата и отправлять по назначению. Это позволяет правительству Казахстана легко отслеживать действия своих граждан в Интернете.
Как пишет издание ZDNet, пользователи, пытающиеся получить доступ к интернету с 17 июля 2019 года, перенаправляются на веб-страницы, на которых содержатся инструкции по установке корневого государственного сертификата в браузерах для мобильных устройств и компьютеров.
Без установки сертификата зайти на сайты с HTTPS (а таких большинство) нельзя — интернет-провайдер блокирует доступ и выдаёт страницу-заглушку, подобную той, которая представлена ниже.
Жителей Казахстана обязали установить сертификат безопасности «для защиты от хакерских атак и просмотра противоправного контента»
На этой странице выведено следующее сообщение:
Целью применения сертификата безопасности является ограничение распространения по сети телекоммуникаций запрещенной законодательством информации. |
Операторы Kcell и Activ заявили, что сертификат был внедрен из-за участившихся случаев хищения персональных данных казахстанцев и кражи денег с их банковских карт. Он защитит абонентов «от хакерских атак и просмотра противоправного контента». У сертификата не будет доступа к персональным данным абонента, утверждают Kcell.
Migrating from v1.x.x
http-status-codes v2 is mostly backwards compatible with v1. There is a single breaking change and two recommended changes.
The reason phrase for the status code has been changed from to . This is the correct phrase according to RFC7231. If you are migrating from v1, and have code that relies on the result of or , then this could affect you.
The function has been renamed to . The old function is still available, but may be deprecated in a future version. To fix this simply rename instances of to . The function is otherwise the same as it was before.
In http-status-codes v1, Status Codes were exported directly from the top-level module. i.e. . In v2 all Status Codes live under an object called . i.e. . We made this change to cater to TypeScript users who prefer a dedicated value with an enum type. The previous values are still exported, but we won’t continue to update them. Please migrate if you’re using the old-style imports.
5 последних уроков рубрики «Разное»
-
Выбрать хороший хостинг для своего сайта достаточно сложная задача. Особенно сейчас, когда на рынке услуг хостинга действует несколько сотен игроков с очень привлекательными предложениями. Хорошим вариантом является лидер рейтинга Хостинг Ниндзя — Макхост.
-
Как разместить свой сайт на хостинге? Правильно выбранный хороший хостинг — это будущее Ваших сайтов
Проект готов, Все проверено на локальном сервере OpenServer и можно переносить сайт на хостинг. Вот только какую компанию выбрать? Предлагаю рассмотреть хостинг fornex.com. Отличное место для твоего проекта с перспективами бурного роста.
-
Создание вебсайта — процесс трудоёмкий, требующий слаженного взаимодействия между заказчиком и исполнителем, а также между всеми членами коллектива, вовлечёнными в проект. И в этом очень хорошее подспорье окажет онлайн платформа Wrike.
-
Подборка из нескольких десятков ресурсов для создания мокапов и прототипов.
Где взять коды ошибок и статусы
Коды состояния и ошибок могут быть неочевидны в документации API. Вероятно, придется попросить разработчиков предоставить список всех кодов состояния и ошибок, которые уникальны для API. Иногда разработчики хардкодят коды состояния и ошибок непосредственно в программном коде, и у них нет простых способов передать полный список (что также затрудняет локализацию).
В результате может потребоваться танцы с бубнами, чтобы найти все коды. В частности, возможно придется сломать API, чтобы увидеть все возможные коды ошибок. Например, если превысить ограничение скорости для определенного запроса, API может вернуть специальную ошибку или код состояния. Такой пользовательский код обязательно нужно задокументировать. В разделе устранения неполадок в API можно специально разместить примеры получения кодов ошибок.
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. |
What does a 3xx Redirection code mean?
A 3xx Redirection status code means that you have been redirected and the completion of the request requires further action. Redirects are a natural part of the internet and you shouldn’t be scared to have 3xx redirect status codes on your website. A redirect means that the request was received successfully, but that the resource was found elsewhere. If a webpage has changed path and you try to access it through the old path, your CMS will often redirect the user to the new path. Ultimately the request will end in a 2xx success, but first it must go through the 3xx redirection.
What does 300 Multiple Choices mean?
The 300 Multiple Choices status code means that the request has multiple possible responses and the user/user agent should choose one.
What does 301 Moved Permanently mean?
The 301 Moved Permanently response code means that the target resource has been assigned a new permanent URL and any references to this resources in the future should use one of the URLs included in the response.
When looking at things SEO-wise the 301 Permanent Redirect should be used every time a URL is moved permanently. This redirect passes your current link equity from your content to the new URL. Links that result in a status code 301 does give slightly less link equity than 200. So if you have a lot of links going through a 301 Permanent Redirect it is advised to fix these, if possible.
What does 302 Found (Previously “Moved temporarily”) mean?
The 302 Found status code, previously known as “Moved temporarily”, means that the URI of the request has been changed temporarily, and since changes can be made to the URI in the future, the effective request URI should be used for future requests.
When looking at things SEO-wise the 302 Found should only be used when making temporary changes as it does not pass the link equity the same way as a 301. If the page is not going to come back you should always use 301.
What does 303 See Other mean?
The 303 See Other response code is sent by the server in order to direct the client to get the requested resource at another URI with a GET request.
What does 304 Not Modified mean?
The 304 Not Modified response code informs the client that the response has not been modified. This means that the client can continue to use the already present, cached version of the response.
What does 305 Use Proxy mean?
The 305 Use Proxy status code instructs a client that it should connect to a proxy and then repeat the same request there. This response code is deprecated due to security concerns.
What does 306 Switch Proxy mean?
The 306 Switch proxy status code is no longer in use. It was used to inform the client that the subsequent requests should use the specified proxy.
What does 307 Temporary Redirect mean?
The 307 Temporary Redirect status code gets sent by the server in order to direct the client to the requested resource at another URI. The request method, however, must not be changed.