# 301, 302, 307, 308 — в чём разница и какой редирект когда нужен

> Понятно про HTTP-редиректы: 301 vs 302 vs 307 vs 308, постоянные и временные, сохранение метода запроса, влияние на SEO и ИИ-краулеров. С таблицами, сценариями и частыми ошибками.

_Source: https://seomatrix.ai/ru/blog/301-302-307-308-redirects/ · Updated: 2026-06-28_

---

Редирект — это ответ сервера «страница теперь по другому адресу». Кодов несколько, и выбор между ними влияет и на SEO (передача веса, индексация), и на корректность работы форм и API. Разберём 4 главных: **301, 302, 307, 308**.

> Коротко: есть две оси. **Постоянный или временный** (это важно для SEO) и **сохраняется ли метод запроса** POST/GET (это важно для форм и API). 301/308 — постоянные, 302/307 — временные; 307/308 дополнительно сохраняют метод.

## Таблица: чем отличаются

| Код | Тип | Метод запроса | Когда использовать |
|---|---|---|---|
| **301** Moved Permanently | Постоянный | Может смениться (POST→GET) | Страница переехала навсегда — основной SEO-редирект |
| **302** Found | Временный | Может смениться (POST→GET) | Временно: A/B-тест, акция, тех. работы |
| **307** Temporary Redirect | Временный | Сохраняется (POST остаётся POST) | Временный переезд, где нельзя терять метод/тело запроса |
| **308** Permanent Redirect | Постоянный | Сохраняется | Постоянный переезд с сохранением метода (например, API) |

## Постоянный против временного (ось №1 — для SEO)

- **301 / 308 — постоянные.** Говорят поисковику: «переноси сигналы на новый URL». Старый адрес со временем выпадает из индекса, его заменяет новый. Это то, что нужно при переезде страницы, смене URL, склейке `http→https` или `www`.
- **302 / 307 — временные.** Поисковик оставляет в индексе **исходный** URL, потому что вы сказали «это ненадолго». Для постоянного переезда это ошибка: склейка сигналов откладывается, а старый адрес продолжает висеть в выдаче.

> Правило для SEO: переезжаете навсегда — **301**. «Временный» редирект, который живёт месяцами, путает поисковик и тормозит передачу веса.

## Сохранение метода запроса (ось №2 — для форм и API)

Старые **301 и 302** исторически разрешают клиенту сменить метод: браузер после редиректа обычно превращает `POST` в `GET` (тело запроса теряется). Для обычных страниц это не проблема — их открывают через `GET`.

**307 и 308** — строгие: метод и тело запроса **сохраняются**. `POST` остаётся `POST`. Это критично, когда редиректится:

- отправка формы (`POST`);
- эндпоинт API, который принимает `POST`/`PUT`;
- любой запрос с телом, который нельзя «уронить» в `GET`.

## Какой редирект для какой задачи

Сценарии от самых частых к специфичным:

| Задача | Код | Почему |
|---|---|---|
| Страница переехала навсегда, сменился URL | **301** | Постоянный → склеивает сигналы на новый адрес, старый выпадает из индекса |
| Смена домена, `http→https`, склейка `www` / дублей | **301** | Тот же механизм консолидации; собирайте в **один** переход до финального URL |
| Удалён товар / истекла акция | **301** на релевантную категорию | Передаёт вес и не плодит 404 — но **не** на главную (это «мягкая 404») |
| Тех. работы, «скоро вернёмся», сезонная страница | **302** | Временно → поисковик сохраняет исходный URL в индексе |
| A/B-тест, временный показ контента с другого URL | **302** | Не хотим, чтобы движок заменил оригинал тестовым адресом |
| Партнёрский / исходящий коммерческий линк через трекер `/go/…` | **302** (или 307) | Оффер временный и ротируется, трекер-URL не нужно индексировать/склеивать; см. колаут ниже |
| Временно перенаправить отправку формы (`POST`) | **307** | Сохраняет метод и тело запроса — `POST` остаётся `POST` |
| API-эндпоинт переехал навсегда | **308** | Постоянный + сохранение метода (`POST`/`PUT` не превратятся в `GET`) |

> **Партнёрские ссылки и миф про 302.** Многие гоняют аффилиат-линки через внутренний редирект (`/go/partner`) на 302 — и это нормально, но **не** ради «скрыть аффилиатность» или «не передавать вес». Краулер проходит цепочку и записывает **конечный** URL как свойство документа (поле `urlAfterRedirectsFp` из утечки Google Content Warehouse API), а ссылочные сигналы привязываются к destination. То есть Google всё равно видит, что ссылка ведёт на партнёрку. 302 здесь оправдан другим: оффер **временный и ротируется** (302 держит трекер транзитным переходом, его не индексируют и не склеивают), плюс **единая точка управления** (сменить оффер в одном месте) и аналитика кликов. А реальная защита от «thin affiliate» — это `rel="sponsored"` на ссылке, оригинальный контент (свои тесты/фото/данные) и named-автор, а не код редиректа.

> **Иногда нужен не редирект.** Дубли с UTM-метками и параметрами сортировки закрывают `rel="canonical"`, а не редиректом. Полностью удалённую страницу без замены честнее отдать **410 Gone** (или 404), чем редиректить «куда-нибудь».

## canonical или редирект?

Коротко: **редирект (301)** физически уводит на другой URL — старого адреса больше нет. **`rel="canonical"`** [оставляет все URL рабочими, но указывает поисковику главную версию](/ru/tools/indexability/). Дубли с параметрами (`?utm=`, сортировка, версия для печати) — это canonical; настоящий переезд страницы — это 301.

Разница тонкая, но важная — разобрали её отдельно: **[canonical vs редирект — что выбрать и когда](/ru/blog/canonical-vs-redirect/)**.

## 302 vs 307 на практике

Оба временные; вся разница — в методе запроса:

- **302** — клиент может «переиграть» `POST` в `GET` (исторически браузеры так и делают). Для обычной навигации по ссылке (`GET`) это незаметно и нормально.
- **307** — строго сохраняет метод и тело: `POST` остаётся `POST`.

На практике:

- Временно перенаправляете обычную страницу или ссылку → **302** (проще и повсеместно понятен).
- Временно перенаправляете `POST` (отправка формы, запрос с телом) → **307**, иначе данные потеряются при смене на `GET`.
- Нюанс: браузерный **307** генерируется внутренне механизмом **HSTS** при принудительном `http→https` — это не ваш серверный редирект, его настраивать не нужно.

Для SEO выбор между 302 и 307 не важен — оба временные, поисковик трактует их одинаково. Важен только сценарий с методом запроса.

## Влияние на ИИ-поиск (GEO)

ИИ-краулеры (GPTBot, PerplexityBot, ClaudeBot) тоже **идут по редиректам**. Если процитированный ИИ URL отвечает битым или зацикленным редиректом — вы теряете самый дорогой трафик: посетителя из ответа ИИ. А «времянка» 302 на постоянном переезде сбивает движки с толку: они продолжают держать старый адрес. Для AI-видимости правило то же — постоянный переезд закрывайте **301/308** на релевантную страницу.

## Частые ошибки

1. **302 вместо 301** на постоянном переезде — откладывает склейку сигналов, старый URL висит в индексе.
2. **Цепочки редиректов** (`A→B→C`) — каждый переход теряет немного веса и замедляет краулинг. Держите 1 переход.
3. **Массовый редирект всего на главную** — Google считает это «мягкой 404», вес не передаётся. Редиректьте на **релевантную** страницу.
4. **Несколько переходов на `http→https→www`** — соберите в один 301 до финального URL.
5. **Meta-refresh или JS-редирект** вместо серверного 3xx — медленнее и слабее как сигнал. Делайте редирект на сервере.
6. **Не обновили внутренние ссылки** — даже при рабочем редиректе ссылайтесь сразу на финальный URL, не гоняйте через переход.

## Как проверить свои редиректы

1. Прогоните URL через [проверку редиректов](/ru/tools/redirect-check/) — увидите всю цепочку и финальный код.
2. Посмотрите [заголовки ответа](/ru/tools/response-headers/) — какой именно статус отдаёт сервер.
3. Убедитесь, что постоянные переезды — это **301/308**, нет цепочек и петель, цель релевантна.

> Хотите, чтобы техническую часть — редиректы, склейку, canonical, индексацию — вела автономная ИИ-команда от диагностики до правок? Загляните на [главную](/ru/) или в [сравнение](/ru/compare/).

## Источники

- MDN Web Docs — HTTP redirections (301/302/303/307/308).
- Google Search Central — Redirects and Google Search (постоянные vs временные, передача сигналов).
- RFC 7231 / RFC 7238 — семантика 3xx и кода 308.
- Google Content Warehouse API leak (2024) — поля `urlAfterRedirectsFp`, `forwardingdup` (резолв цепочки редиректов и атрибуция сигналов на конечный URL).

## FAQ

### В чём разница между 301 и 308?

Оба постоянные и передают сигналы новому URL. Разница в методе запроса: 301 разрешает сменить POST на GET, 308 сохраняет метод. Для обычных страниц берут 301, для API с POST — 308.

### 301 или 302 для SEO?

Для постоянного переезда — только 301: он переносит ранжирующие сигналы и заменяет старый URL новым. 302 — для действительно временных ситуаций (тех. работы, акция, A/B-тест).

### Передаёт ли 302 «вес»?

302 задуман как временный, поэтому Google держит в индексе исходный URL. Долгоживущий 302 со временем может трактоваться как постоянный, но полагаться на это не стоит — на постоянный переезд ставьте 301.

### Что такое 307 и когда он нужен?

307 — временный редирект с сохранением метода запроса. Нужен, когда временно перенаправляете POST-форму или запрос с телом, который нельзя превратить в GET.

### Какой редирект для партнёрских ссылок?

Обычно 302 через внутренний трекер /go/… — но не «чтобы спрятать ссылку»: Google всё равно резолвит конечный URL. 302 удобен потому, что оффер временный и ротируется, а трекер не нужно индексировать. От «thin affiliate» защищает rel="sponsored" и качество контента, а не код редиректа.

