Redirects: 301, 302, 307 | How-To 301 guide
What is redirection?
Redirection is a way of forwarding the user to the URL that is different from the one they initially clicked on. Down below some of the most common types of redirection are listed.
301 Moved Permanently
A 301 redirect is a permanent redirect which passes between 90-99% of link equity (ranking power) to the redirected page. 301 signals that the page has been moved to another URL and the old URL is outdated.
302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)
302 is a temporary redirect which passes 0% of link equity, and shouldn’t be used in most cases.
As of now, the internet runs on an HTTP protocol which dictates how URLs work. In two versions of this protocol, the HTTP response status code is different:
307 Moved Temporarily (HTTP 1.1 Only)
A 307 redirect is the HTTP 1.1 successor of the 302 redirect. While the major crawlers will treat it like a 302 in some cases, it is best to use a 301 for almost all cases. The exception to this is when content is really moved only temporarily (such as during maintenance) and the server has already been identified by the search engines as 1.1 compatible.
Since it’s essentially impossible to determine whether the search engines have identified a page as compatible, it is generally best to use a 302 redirect for content that has been moved temporarily.
Other redirection types
There are also some other types of redirection: Meta Refresh or JavaScript redirection that are executed on the page level rather than the web server level. This is what a typical Meta Refresh redirect looks like:
It’s best not to use these types of redirect, as they are often used by spammers and doorway pages. Besides, they pass little to none of the link juice.
Examples of using redirects
Redirecting your domain to a non-www URL:
Redirecting your domain to a www URL:
To choose which URL to make canonical, consider:
When developing a website, it’s important to choose whether you want to add a slash to the links, because the search engines consider the links
— www.site.com/cat1
and
— www.site.com/cat1
to be different. Then, you’ll have to add the following code:
To 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
This code ensures that if there are multiple versions of the direct link to the main page (index, etc.), they will all redirect to the canonical main page:
If the URLs reflect the structure of a catalog, changes in the catalog will lead to changes in the URLs. In this case, use the following redirect:
But, if the URL of the previous catalog comes right after the name of a domain: www.site.com/old-catalog, use this code:
If you’ve switched platforms or a CMS and only the URLs’ extension has changed, use this redirect:
Examples of using redirection to avoid duplicate pages
In case you’ve bought several domains with multiple TLDs, OR used a subdomain to develop a new website and forgot to block it from being indexed by the search engines. Either way, you have to set up redirection to the root domain:
That way, all the (sub-)domains like www.site.org, www.site.net, test.site.com, will redirect to www.site.com
Deleting multiple slashes/hyphens from the URLs
Sometimes, user can accidentally type in multiple slashes, e.g. www.site.com/catalog////page-1.html. In this case, you have to set up a 301 redirect to a page with a single slash www.site.com/catalog/page-1.html:
In the same way, you can set up a redirect from a URL with multiple hyphens (for example, www.site.com/catalog/page—1.html) to www.site.com/catalog/page-1.html:
Redirecting from any URL to a lowercase URL
The search engines notice the letter case, so it’s best to have your URLs in lowercase. If you haven’t developed your website with this in mind, you can use this PHP-script:
How to move your website to a new domain? The optimal strategy for a 301 redirect
According to the most popular search engines, the best strategy for moving to a new domain is:
Generating 301 redirects
If you’re not particularly tech-savvy, you can use the online services for generating basic redirects:
How to test the 301 redirect
With every change in 301 redirect, you need to test the site’s performance:
301 redirect VS Canonical — which one to use & when?
Minor details aside, in order to understand what exactly do we want to say, Google offers some clear-cut rules. In very simple terms, this is how the search engines understand our commands:
301: okay, google (or any other search engine), my page isn’t there anymore and it’s been permanently moved to a new URL. Please, delete the old link from the index, and pass the link juice to the new page.
Canonical: okay, google, I’ve got multiple versions of the same page (or its content), so, please, index only the canonical version. I will keep the other versions for people to see, but don’t index them, please, and pass the link juice to the canonical page.
When is it better to use a 301 redirect?
When is it better to use rel= «canonical»?
Both solutions pass the link juice and both are ranked by Google equally. 301 redirect is a bit more preferred, though.
Redirection mistakes
If you have any questions, ask them down below. I will try my best to help you!
Как сделать 302 редирект (moved temporarily)?
Делаем 302 redirect
Раз уж я написал про 301 редирект, то было бы неправильно обойти стороной и 302-е перенаправление — moved temporarily. Здесь всё намного проще.
Данный способ перенаправления аналогичен 301-му (с точки зрения посетителей сайта) — ведь браузеру всё равно, какой тип редиректа используется. В обоих случаях весь трафик, идущий на одну страницу, автоматически «улетит» на другую страницу.
Но для поисковых роботов всё несколько по-иному: как и следует из расшифровки названия (moved temporarily — «перемещено временно»), код 302-го редиректа сообщает поисковикам, что данная страница находится по новому адресу временно — значит, она скоро вернётся на прежний адрес и обновлять поисковый индекс нет необходимости.
Если кратко: всё что нужно знать, это то, что:
Пожалуй, вот и вся теория. Теперь о том, как это делать.
Как сделать 302 редирект на сайте?
На самом деле, как-то специально делать этот тип перенаправления не надо (чего не скажешь про 301). Практически любое перенаправление по умолчанию имеет код 302 (temporarily).
На самом популярном языке серверного веб-программирования (PHP) всё выглядит обычно вот так:
— таким способом можно отправить посетителя на новый адрес, причём он ничего и не заметит. Адрес может быть любой абсолютной или относительной ссылкой, например, так:
Только необходимо, чтобы до этого PHP-кода не было всяких символов (HTML-кода, пробелов, переводов строк и т.д.), иначе ничего не получится.
Здравствуйте, Петр! Спасибо за подробное описание работы 302 редиректа. Знание — это сила. А скажите, если не жалко, каким плагином Вы пользуетесь «Случайные публикации»? очень прикольная фишка. =)
Но вообще, толку от этой штуки особого нет. Изначальная предполагаемая её задача — увеличить количество просмотров. Но на деле — всё не так.
Подскажите а в какой файл нужно дописать этот код
Или нужно отдельный создавать на сервере?
в предыдущем варианте не вставился код
Сообщать мне о новых комментариях к этой статье
Что такое ошибка HTTP 302 и как ее исправить? [4 протестированных метода объяснено]
Вот некоторые из вопросов:
В этой статье я отвечу на все эти вопросы, чтобы у вас было больше ясности в каждом конкретном случае.
Что такое редирект 302?
Code 302 indicates a temporary redirection.
One of the most notable features that differentiate it from a Переадресация 301 в том, что в случае 302 перенаправлений сила SEO не переносится на новый URL.
Это связано с тем, что это перенаправление было разработано для использования в тех случаях, когда необходимо перенаправить контент на страницу, которая не будет окончательной.
Таким образом, после устранения перенаправления исходная страница не потеряет свое положение в поисковой системе Google.
Несмотря на то, что мы не очень часто нуждаемся в перенаправлении 302, в некоторых случаях этот параметр может быть очень полезным. Это наиболее частые случаи:
Для чего нужен редирект 302?
Редирект 302 служит, например, для того, чтобы иметь несколько версий домашней страницы на разных языках.
The main one can be in English, but if the visitors come from other countries then this system automatically redirects them to a page in their language.
Таким образом, мобилизация Веб-трафик достигается, но в то же время влияние на уровне SEO главной страницы не ослабляется. Это продолжает расти, несмотря на то, что передача власти не происходит, как мы объясняли ранее.
Пример перенаправления HTTP 302
The most common HTTP 302 redirect example case is Google.
Независимо от страны, в которую вы входите, если вы введете https://www.google.com/, you will be redirected to the Google version in the language/country that corresponds to you.

В случае Германии 302 автоматически доставит нас к https://www.google.de/ так что мы можем искать контент на немецком языке.
Порталы успешных компаний, таких как Coca-Cola или даже Fujitsu, также используют эту систему для перенаправления трафика туда, где они считают наиболее удобным.
What causes HTTP 302 error?
Here are some of the most common reasons for the 302 redirect error:
How to identify HTTP 302 error?
Проверка того, что 301 и 302 перенаправить настройки верны очень легко.
When entering into the address bar of the old address, we observe what is happening.
The change of address indicates that everything is fine with the redirect.
The address remains the same – you need to look for the source of the problem, but first, we advise you to clean the cache and try again.
How to fix HTTP 302 error?
Способ 1: проверьте конфигурацию сервера
Приложение может работать на сервере, который использует одну из этих двух наиболее распространенных программ веб-сервера, Nginx или Apache. На эти два веб-сервера приходится более 84 процентов глобальной программы веб-сервера!
Therefore, the first step in determining the 302 response code is checking the mandatory redirect instructions in the webserver program configuration file.
Для веб-сервера Apache
Шаг 2: Найдите директивы mod_rewrite
Обратите внимание на дополнительный баннер в нижней части RewriteRule, который ясно показывает, что код ответа должен быть 302, показывая агенту браузера, что это временное перенаправление.
Для веб-сервера Nginx
Шаг 1: Откройте файл nginx.conf

Если ваш веб-сервер работает на Nginx, вам следует искать совершенно другой файл конфигурации. Этот файл указан как nginx.conf по умолчанию и находится в одном из общих каталогов, перечисленных ниже:
/ usr / local / nginx / conf, / etc / nginx или, / usr / local / etc / nginx.
Шаг 2: Перепишите директивы в файле nginx.conf
После обнаружения откройте файл nginx.conf в текстовом редакторе и найдите директивы перезаписи, относящиеся к индикатору перенаправления.

Например, это простая директива блока (объявленная как набор операторов), которая устанавливает виртуальный сервер путем создания временного перенаправления с abc.com на временный-abc.com:
Nginx переписывает директивы параллельно с Apache RewriteRule и
RewriteCond, потому что они обычно содержат более сложные текстовые шаблоны поиска.
Шаг 3: Проверьте политику замены файла nginx.conf
В любом случае проверьте файл nginx.conf для политики замены исключений, которая содержит флаг перенаправления (другой код ответа возврата постоянного ключа 301).

Обратите внимание на любые исключения перед перезагрузкой сервера, чтобы проверить, решена ли проблема.
Способ 2: поиск устаревшего программного обеспечения
В документе спецификации RFC для HTTP 1.0 говорится, что цель кода ответа «302 найдено» предназначена для указания того, что клиент должен выполнить временное перенаправление.

However, many new browsers will process the code 302 received through the POST request as an invalid GET request.
This has triggered snags and confusion with particular web server programs that attempt to force the browser to perform the right work when it needs to be redirected temporarily.
Чтобы решить эту проблему, документ спецификации RFC HTTP 1.1 возвратил 303 кода ответа, еще 307 временных перенаправлений, что является понятным способом управления POST-to-GET или временными переходными ответами.
Метод 3: Очистка бревен
Почти все веб-приложения хранят записи на сервере. Журнал приложения обычно представляет историю приложения, например, какие страницы, серверы были запрошены и подключены, которые были получены из предоставленной базы данных и т. Д.

Журналы сервера подключены к текущему устройству, на котором запускаются программы, и обычно содержат информацию о состоянии и работоспособности всех подключенных служб и даже информацию о сервере.
Запишите Google [PLATFORM_NAME] в CMS или используйте [PROGRAMMING_LANGUAGE], чтобы зарегистрироваться и зарегистрировать [OPERATING_SYSTEM] при запуске пользовательского приложения для получения дополнительной информации для получения этих записей.
Способ 4: исправить код приложения
В случае сбоя всех описанных выше способов проблема может заключаться в коде пользователя приложения, вызвавшего проблему.

Попробуйте определить причину проблемы, вручную обнаружив приложение и проанализировав его в файлах журнала сервера и приложений.
Рекомендуется скопировать полное приложение на локальный компьютер для разработки и пройти по нему, чтобы точно узнать, что происходит с 302 сканированием, и увидеть код для каждого приложения.
Заключение
Наконец, как вы видели, нам не нужно сильно бояться ошибок перенаправления HTTP 302. Не углубляясь в это, они представляют собой фантастический способ избежать потери трафика на наших веб-страницах с неизбежными изменениями, которые возникают в течение многих лет.
I hope that, after reading this article, you will not get chills every time about how do I fix the 302 moved temporarily error.
Если вы хотите внести свой вклад в сообщение, или если у вас есть вопрос или просто хотите высказать свое мнение, не стесняйтесь комментировать ниже!
301, 302 или 404? Что применять и в каких случаях?
301 Moved Permanently
301 редирект указывает роботам ПС, что страница перемещена по новому адресу, а старый адрес следует считать устаревшим. Ссылочный вес старого адреса будет передан новому URL.
Стандартные случаи применения 301 редиректа:
В каких ещё случаях целесообразно настроить 301 редирект
– Из товарных карточек
В некоторых случаях, если товара нет в наличии и больше не планируется добавляться, можно настроить 301 редирект на аналогичную модель. Если аналогичной модели нет, настроить 301 редирект на категорию, к которой относился товар.
Настроив 301 редирект, вы сохраните на сайте внешние сигналы. Если кто-то из пользователей перейдёт на страницу по ссылке или закладке, он увидит аналогичную модель или попадёт на страницу раздела, где сможет найти похожий товар.
Прежде чем принять такое решение, нужно провести детальный анализ, описанный в нашей статье «Как не терять трафик из товарных карточек, если товара нет в наличии?»
Если у вас есть пиаристый домен с внешними ссылками, который по каким-то причинам не используется, можно использовать 301 редирект на продвигаемый сайт. Важное условие – схожесть тематики.
Рекомендуем размещать все правила после следующих строк:
Переадресация домена без www на домен с www:
Переадресация домена с www на без www:
Перенаправление с одной статической страницы на другую:
Редирект на папки без слеша:
Редирект на папки со слешем в конце:
301 редирект с HTTPS-версии на HTTP:
301 редирект с домена на домен:
Перенос изображений на поддомен:
Редирект с поддомена на основной домен второго уровня:
302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)
302 редирект – это временное перенаправление на другой адрес. Он означает, что ресурс временно находится где-то в другом месте, и клиент/браузер должен продолжать запрашивать исходный URL. Из индекса такие страницы не удаляются.
Случаи, в которых целесообразно использовать 302 редирект:
Например, 302 редирект можно использовать для страницы с акционными предложениями в интернет-магазине. Чтобы не переделывать постоянно основную страницу, наполненную контентом и продвигаемую в ПС, можно временно перенаправлять её на страницы со списками свежих акций, которые могут обновляться еженедельно.
404 ошибка: страница не найдена
404 ошибка – это код ответа сервера, который означает, что страница, которую вы запрашиваете, не найдена.
Чаще всего причиной этой ошибки становятся:
Ошибки 404 также могут появиться вследствие некорректной работы сервера, который способен выдавать ошибку даже при работающем ресурсе.
Причин появления 404 ошибки много и исключить их все вы не сможете. Важно знать, какой должна быть страница 404, чтобы в случае, если пользователь на неё попадёт, он возвращался к работе с веб-ресурсом вместо ухода с него.
Подробное описание, какой должна быть правильная 404 страница.
Что выбрать: 301 или 404?
Каждую ситуацию нужно анализировать индивидуально. Ниже мы собрали несколько популярных вопросов и дали ответы на них.
Вопрос №1
Ответ
Мы рекомендуем настроить код ответа сервера 404. Все несуществующие страницы пагинации должны отдавать 404-й код ответа сервера.
Вопрос №2
Есть интернет-магазин из 4000 страниц. Сотни товаров уже не нужны для продажи и требуется убрать их с сайта. У каждого товара своя страница. Как лучше сделать: поставить 404 код ответа сервера на эти страницы или сделать 301 редирект на главную?
Ответ
Не рекомендуем настраивать 301-й редирект на главную страницу. Для пользователей, ищущих конкретную модель (по ссылке или через закладки), такой редирект будет плохим ответом.
Для начала нужно удалить страницу из навигации и поиска по сайту (на сайте больше не должно быть внутренних ссылок на эту товарную карточку). Далее проанализировать наличие переходов на товарные карточки. Если переходы есть и пользователей интересует именно эта модель, настраивать 301-й или 404-й будет неправильно. На таких карточках нужно предоставить информацию о том, что товара нет, и не будет в наличии, и предложить аналогичные товары, поместив блок «Вас также может заинтересовать».
Если переходов нет, нужно проанализировать, есть ли внешние ссылки на эти страницы. Если есть, для сохранения ссылочной массы сайта можно настроить 301 редирект на аналогичные модели. Если аналогичной модели нет, настроить редирект на категорию, к которой относился товар. Если на сайте нет аналогичной модели и категории, удалить страницу и настроить 404-й ответ сервера.
Вопрос №3
Как поступить с ошибкой 404 для удалённых или несуществующих новостей. Оставить 404 или редиректить 301-м на главную?
Ответ
Вопрос №4
Как может сказаться на индексировании большое количество 301 редиректов на внутренние страницы? Есть сайт, каталог постоянно пополняется, но, одновременно, большая часть товара выбывает из оборота и больше поставляться не будет. На такие страницы ставится статус «под заказ», они отдают 200, пока ещё в индексе. Из них больше половины карточек товара, но фактически это мусор. Из-за опасения потерять трафик, есть предложение ставить на них 301 редирект. Как это скажется на индексировании?
Ответ
Если неправильно использовать, может сказаться негативно. Например, если со всех несуществующих страниц поставить 301-й редирект на одну страницу. Итог — поисковая система может или просто понизить в выдаче, или вовсе выкинуть весь старый контент из индекса вместе со ссылочной массой.
Такие страницы нужно удалить из навигации сайта, далее необходимо провести детальный анализ, описанный в статье «Как не терять трафик из товарных карточек, если товара нет в наличии?». По результату анализа настроить постраничный 301 редирект на аналогичные модели или настроить 404 ответ сервера.
Вопрос №5
Подскажите, а можно ли убрать 301 редирект. Например, товар снова появился в продаже через некоторое время, а до этого был отключён и через 301 редирект связан с материнским разделом.
Ответ
Если товар через некоторое время появился, можно убрать 301-й редирект. В таком случае нужно добавить восстановленные страницы на переобход в Яндекс.Вебмастер и Google Search Console.
Вопрос №6
Сайт имеет несколько региональных поддоменов. Через особенности движка некоторые материалы основного сайта продублировались на поддомены. То есть, образовались прямые копии страниц. Стоит задача корректно убрать их с выдачи и, желательно, вообще с сайта.
Вариант 1. Просто снимаем материалы, пусть поиску отдаются 404 или 410 ответы. Со временем они уйдут из выдачи, но на дубликаты могут быть ссылки и т. д.
Вариант 2. Снимаем материалы и делаем 301 редиректы на главные копии на основном сайте.
Вариант 3. На всех дублях указать канонические адреса.
Хороший вариант, но физически мы оставляем дубли, они почти даром расходуют краулинговый бюджет. Это также лишняя нагрузка на сервера и фактически балласт.
Ответ
В этом случае нужно удалить с поддоменов ссылки на дублирующийся материал и настроить 301 редирект на идентичные страницы основного сайта.
Не нашли ответа на интересующий вопрос? Тогда задайте его в комментариях!
Гид по 3хх редиректам
Все что нужно знать о кодах ответа 3хх
Все прекрасно знакомы с кодами ответа 301 и 302 — это HTTP коды перенаправления. На самом деле они далеко не единственные и существует еще несколько различных типов редиректов, многие из которых мы, как SEO-специалисты, не используем. Хотя иногда, сканируя сайт, можно увидеть, что некоторые страницы отдают код ответа 307. И вот вопрос — что с ними делать? Нужны ли они нам вообще?
Собственно, сначала нужно разобраться в теории — для чего созданы различные типы редиректов и когда они используются.
Напомним, что переадресация URL (редирект) — это функция сервера, которая отправляет клиента и поисковую систему с одного URL-адреса на другой. Чаще всего редиректы автоматические и классифицируются с помощью кодов ответа, определенных в протоколе HTTP.
Какие бывают коды редиректов:
Забегая наперед: в статье будут использоваться термины GET, POST, HEAD запросы. Поэтому тем, кто, прочитав это, напрягся и начал чувствовать себя неуверенно — посмотрите справку в конце этой статьи.
HTTP 300 — Multiple Choice (Множественный выбор)
300 код ответа возвращается, когда запрашиваемый ресурс (страница) имеет более одного «пункта назначения» со своим уникальным идентификатором. То есть предоставляется информация об альтернативах, чтобы пользователь (или браузер) мог выбрать предпочтительный конечный ресурс, перенаправив свой запрос на один или несколько из этих идентификаторов.
Обычно разрешается максимум 5 адресов. Браузер может сделать выбор из этого списка автоматически, если он понимает предоставленный тип носителя.
Когда дают право выбрать
Представьте, что это страница «Википедия:Неоднозначность», когда Вики предлагает перечень ссылок, чтобы вы могли найти нужный ответ на свой вопрос.
Когда используют
Используют, чтобы браузер или пользователь имели право выбирать наиболее подходящую страницу для своих потребностей. К примеру, так можно представить опции разных форматов файла, несколько языковых версий. В целом, это довольно редкое явление и имеет мало общего с вашим SEO.
HTTP 301 – Moved Permanently (Навсегда перемещен)
Этот статус указывает на то, что ресурс навсегда изменил URL. То есть для запрашиваемой страницы был установлен новый адрес и последующие обращения к ней должны осуществляться по заданному новому URI.
Со временем поисковая система обновит свой индекс, заменив старый адрес страницы на новый. Браузеры и другие типы клиентов закэшируют новый URL-адрес и будут автоматически следовать редиректу напрямую, не проверяя оригинал для последующих запросов. Сохраненные закладки также обычно обновляются.
301 редирект может быть задан в файле htaccess, index.php или httpd.conf на сервере или в системе управления контентом. Например, есть несколько плагинов WordPress для управления 301 редиректами.
При изменении структуры URL-адресов на сайте очень важно настроить 301 редирект для каждого нового адреса. Невыполнение этого требования приведет к снижению доверия к сайту поисковой системы и пользователей.
Когда используют
Часто используют 301 редирект, чтобы устранить дубли страниц, перенаправить робота и пользователя с неактуальной страницы или имеющей код ответа сервера 404. Редиректы с кодом ответа 301 настраивают, когда меняется структура URL-адреса после обновления дизайна или переезда; при настройке главного зеркала сайта.
Как настроить
Все способы настройки 301 редиректа с примерами смотрите в нашей статье Как настроить 301 редирект
301 редирект должен быть постоянным, но насколько постоянным может быть постоянство?
Представитель Google Джон Мюллер как-то дал ответ по поводу длительности 301 редиректа: «… Это может быть год, а в идеале даже больше года, так что мы (Google) действительно могли быть уверены, что все, что указывало на старые URL, указывает на новые URL».
Такая философия нам ясна, продолжаем.
HTTP 302 – Moved Temporarily, Found (Временно перемещен)
Код ответа 302 используется для временных перенаправлений. Поскольку конечный адрес может быть изменен в любой момент, браузер должен продолжать использовать старый URI-адрес и дальше.
По поводу PageRank. Официальная версия Google – любой тип 3xx переадресации (в том числе и 302) не теряет PageRank. Тем не менее, это не значит, что можно не переживать, если у вас настроен 302 редирект для постоянного перенаправления.
Google не заменяет старый URL на новый в своем индексе, но если он поймет, что 302 редирект был настроен по ошибке вместо 301, то переиндексирует URL вам на радость.
Безусловно, для этого нужно некоторое время — если это вообще случится. Вероятность этого такая же, как и того, что Google не будет индексировать закрытые в robots.txt страницы, но это уже совсем другая (печальная) история. Так вот, поисковая система, скорее всего, будет ранжировать такой URL-адрес ниже, чем если бы Вы настроили постоянное перенаправление.
Когда используют
302 редирект не настраивают для адресов, которые изменились навсегда. Такой редирект используют, чтобы исходная страница оставалась в индексе или, если посадочная часто меняется. Чаще всего 302 редирект настраивают когда изменяются URL-адреса во время обслуживания сайта, чтобы контент по-прежнему был доступен по другому URL-адресу.
Также мы слышали, что существует такая практика: настроить 302 редирект для товара, которого нет в наличии. Мы не рекомендуем так делать. Лучше, указать на товаре, что сейчас его нет в наличии и добавить блок с похожими или интересными для пользователя товарами на этой странице:
На что стоит обратить внимание
302 лучше настраивать для временного перенаправления адреса, если будет использоваться GET и HEAD метод передачи запроса, так как работу 302 редиректа с другими запросами (POST, PUT) сложно спрогнозировать.
В случае, если используются запросы отличные от GET/HEAD, рекомендуется настраивать 307 редирект (о нем читайте ниже).
HTTP 303 – See Other (Просмотр других ресурсов)
На практике код ответа 303 похож на 302, но он не обозначает перемещение запрашиваемого адреса.
303 код ответа сервера указывает, что запрашиваемый ресурс можно найти по другому URL. То есть — браузеру только предоставляется адрес. Этот конечный адрес не кэшируется.
Когда используют
303 редирект настраивают в случае, когда на определенный запрос браузера нет подходящего ответа (страницы), но можно предложить более-менее удовлетворительный.
С 303 редиректом раньше отлично были знакомы разработчики, так как после POST отправки формы на сайте необходимо было настроить переадресацию, чтобы избежать повторной отправки формы после возможной перезагрузки страницы пользователем.
На что стоит обратить внимание
Некоторые (устаревшие) клиенты не интерпретируют статус 303. В таких случаях применяется 302 редирект.
HTTP 304 – Not Modified (Не модифицировано)
Браузеры могут отправлять запрос, который спрашивает, был ли ресурс изменен после определенного времени. Для внесения информации о последнем редактировании веб-страницы созданы заголовки Last-Modified и If-Modified-Since.
Браузер отправляет запрос, если ранее он уже загружал страницу и закэшировал ее. Если содержимое страницы было изменено с того времени как то сервер даст ответ со статусом 200 OK. Или, если ресурс не был изменен, сервер отправит статус 304 Not Modified – произойдет переадресация на сохраненную копию страницы.
Когда используется
Когда ответ сервера сигнализирует, что страница не изменялась со времени создания последнего кеша. То есть браузеру нет смысла повторно проверять страницу.
SEO-специалисты используют If-Modified-Since и Last-Modified.
Основная цель использования заголовков If-Modified-Since и Last-Modified состоит в том, чтобы обеспечить эффективное обновление кэшированной информации. Управление кэшем поможет улучшить скорость загрузки страницы, а также улучшить общую производительность веб-сайта и, тем самым, удобство для пользователей.
С точки зрения SEO, контролировать обновление кэша очень важно, потому что так можно улучшить сканирование и индексацию сайта.
Вы же помните, что для каждого сайта есть определенный краулинговый бюджет, и задача оптимизатора состоит в том, чтобы максимально эффективно использовать его.
Проблемы со сканированием, само собой, встречаются на действительно больших сайтах — сканируются страницы, которые вовсе не приоритетные для нас, а до необходимого контента робот может так и не дойти. Например, страница «О нас» может часто сканироваться, потому что на нее стоит ссылка на каждой странице сайта в шапке или в футере. Поэтому робот может считать ее важной, хотя на самом деле это не так.
Настроив If-Modified-Since и Last-Modified, можно показать роботу какие именно страницы есть смысл переобходить, а какие так и остались не измененными.
В целом, ускоряется загрузка страниц для пользователей, снижается нагрузка на сервер, в результатах поиска может отображаться дата последнего обновления содержимого страницы, существенно ускоряется индексация страниц.
HTTP 305 – Use Proxy (Использовать прокси)
Переадресация со статусом 305 происходит, когда запрашиваемый ресурс доступен только через прокси-сервер. При этом адрес прокси указывается в ответе. Ожидается, что веб-браузер повторит запрос через прокси.
Некоторые браузеры (Mozilla, Internet Explorer) обрабатывают этот статус некорректно. Скорее всего, они расценивают небезопасным тот факт, что запрос отправляется серверу не напрямую.
Когда используется
Как было сказано выше, если получить доступ к странице можно только через прокси сервер. Прокси сервер используют для разный целей — начиная от анонимности и заканчивая необходимостью кэшировать содержимое, чтобы ускорить загрузку страницы.
На что стоит обратить внимание
Этот код был проигнорирован многими поисковыми системами и, фактически, заброшен.
HTTP 306 – Switch Proxy (Зарезервирован)
HTTP 307 – Temporary Redirect (Временный редирект)
Этот статус был создан, чтобы уточнить 302 редирект.
Код ответа 307 означает, что сейчас запрашиваемый ресурс доступен по другому адресу, но потом все равно вернется на прежний URL. Точно так же, как и с 302, страница не кэшируется, а поисковые системы, вероятнее всего, не будут добавлять в свой индекс новый URL.
Этот код ответа аналогичен 302, за исключением того, что он не позволяет изменить метод запроса с POST на GET.
Когда используют
Настраивают 307 редирект в тех же случаях, что и 302 (смотрите выше). 302 всегда использовался для создания временных перенаправлений, но с появлением HTTP 1.1 код ответа 307 конкретизировал его. Хоть 307 редирект является стандартом HTTP 1.1., он более новый и точный, вовсе необязательно, что этот код ответа широко поддерживается серверами, браузерами или поисковыми системами. До тех пор, пока новый стандарт не станет более распространен, лучше всего указывать 302 редирект.
На что стоит обратить внимание
Чтобы различать две предполагаемые особенности кода ответа 302, создали коды 303 и 307. На практике, ни один из них не используется SEO-специалистами намеренно.
HTTP 308 – Permanent Redirect (Перенаправление на постоянной основе)
Этот код ответа — аналог 301 редиректа с той лишь разницей, что он не позволяет изменить метод запроса с POST на GET. Он точно так же автоматически кэшируется и передает внутренний вес на новую страницу.
Стоит отметить, что этот код ответа экспериментальный.
Когда используется
Как вы уже догадались, 308 редирект настраивают в тех ситуациях, где мы используем 301 редирект. Также когда необходимо выполнить перенаправление на сайте с большим количеством форм, использующих метод POST. Или, если для повторного запроса требуется метод POST.
Есть и другие случаи использования 308 редиректа. Например, Google Drive перенаправляет с кодом ответа 308, чтобы показать, что была прервана загрузка данных.
Справка
Чтобы понять, какой редирект использовать, нужно немного узнать о том, как работает HTTP. Сейчас придется потерпеть, но потом вы будете великолепны.
HTTP протокол характеризует взаимодействие между двумя компьютерами (клиентом/браузером и сервером) с помощью запросов и ответов. GET, HEAD и POST — это самые распространенные методы запросов, которые помогают браузеру или клиенту «общаться» с сервером.
GET — получение ресурса (страницы). GET-запросы могут кэшироваться. Они остаются в истории браузера, могут быть добавлены в закладки и используются специально для извлечения содержимого страницы (HTML, изображения, JS, CSS).
HEAD — получение информации заголовка. HEAD полностью соответствует GET запросу с разницей, что при запросе HEAD нас не интересует сам ресурс (страница/документ), а только его HEADER и код ответа.
POST — отправка данных на сервер. Конечно, можно отправлять данные на сервер с помощью GET, но использовать POST запросы правильнее. Отправка больших объёмов данных с помощью GET нецелесообразна и имеет ограничения. Запросы POST чаще всего отправляются веб-формами. Вы точно когда-нибудь использовали форму на сайте, которая, когда вы нажимаете кнопку «Назад» или попытки обновить страницу, выдает предупреждение по типу «Все несохраненные данные будут утеряны». Это потому, что это был запрос POST. POST запросы не кэшируются, не сохраняются в истории браузера и не могут быть добавлены в закладки, поскольку они являются набором команд для сервера, а не запросом статического ресурса.
Та-дааааааам, Вы — великолепны.
Что мы должны использовать?
Работаем мы с такими редиректами: 301, 302, 304, 307, 308. А реально используем 301, 304 и 302. Догадались почему?
Да, потому что 307 и 308 коды ответа сервера еще не полюбились всем браузерам, клиентам и поисковым системам. Поэтому давайте общаться с ними на понятном для них языке.






















