Редирект 301
HTTP-статус «Moved Permanently»: сообщает браузеру и поисковым роботам, что ресурс окончательно переехал на новый URL. Передаёт ссылочный вес, кешируется браузером и применяется для постоянных коротких ссылок.
Редирект 301 — HTTP-статус 301 Moved Permanently, описанный в RFC 7231. Когда сервер возвращает этот код, он добавляет в ответ заголовок Location с новым адресом. Браузер немедленно переходит туда, не показывая пользователю промежуточный экран, а поисковый робот помечает исходный URL как устаревший и переносит его авторитетность на целевую страницу.
Ключевая особенность 301 — агрессивное кеширование. Браузер сохраняет факт перенаправления и при повторном запросе того же URL не обращается к серверу: он сразу открывает закешированный пункт назначения. Это ускоряет загрузку для пользователя, но создаёт проблему, если вы захотите изменить цель: старый редирект останется в кеше до его принудительной очистки. Именно поэтому в динамическом QR постоянный 301 неприменим — сократить ссылку с возможностью смены назначения можно только через временный редирект, который не кешируется клиентом.
301 vs 302 vs 307 vs 308
- 301 Moved Permanently — постоянный редирект, браузер кеширует, поисковик передаёт ссылочный вес. Метод запроса может измениться с POST на GET (по исторической практике браузеров).
- 302 Found — временный редирект, не кешируется. Используется, когда страница временно недоступна или идёт A/B-тест. Поисковик сохраняет исходный URL в индексе.
- 307 Temporary Redirect — временный, метод запроса строго сохраняется (POST остаётся POST). Применяется в API и формах, где важна семантика метода.
- 308 Permanent Redirect — постоянный аналог 307: кешируется и передаёт вес, как 301, но метод не меняется. Полезен при миграции POST-эндпоинтов.
- Мета-редирект и JS redirect — не HTTP-коды, а клиентские механизмы; поисковики обрабатывают их хуже и не гарантируют передачу веса.
Когда выбрать 301
Редирект 301 — правильный выбор в четырёх ситуациях: смена домена (example.ru → example.com), склейка зеркал (www и без www на один канонический адрес), постоянное перемещение страницы внутри сайта, а также короткая ссылка, цель которой никогда не изменится. Во всех этих случаях вы намеренно сигнализируете поисковику: «исходный URL больше не существует, переноси весь авторитет сюда».
Однако если URL используется в динамическом vs статическом QR-коде, ставить 301 нельзя. Динамический QR-код — это короткий URL, цель которого можно менять в личном кабинете. Если сервер однажды ответил 301, браузер пользователя закешировал редирект. При следующем сканировании он откроет старую цель, минуя сервер, и не узнает об изменении. Для динамических ссылок правильный выбор — 302 или 307.
Частые вопросы
Передаёт ли редирект 301 ссылочный вес (link juice) полностью?
Да, Google и большинство поисковиков официально заявляют, что 301 передаёт ссылочный вес в полном объёме. Ранние эксперименты SEO-специалистов фиксировали потери около 15%, однако с 2016 года Google подтвердил: корректно настроенный 301 не снижает передаваемый авторитет. Важно, чтобы цепочка редиректов была короткой — каждое дополнительное звено добавляет задержку и теоретически может уменьшать вес. Оптимально: один редирект от исходного URL до финального, без промежуточных остановок.
Как очистить кеш редиректа 301 в браузере?
Браузер сохраняет 301-редирект без заголовка Expires на неопределённый срок — иногда до нескольких месяцев. Чтобы очистить: в Chrome откройте DevTools → Network → установите галочку «Disable cache», затем выполните жёсткую перезагрузку страницы (Ctrl+Shift+R / Cmd+Shift+R). Полная очистка — через «Настройки → Конфиденциальность → Очистить данные → Кешированные изображения и файлы». Пользователи редко делают это самостоятельно, поэтому смена цели 301-редиректа — рискованная операция: часть аудитории будет видеть старый адрес ещё долгое время.
Чем отличается редирект на стороне сервера от мета-редиректа?
HTTP-редирект (301, 302 и др.) срабатывает до того, как браузер начинает рендерить страницу: сервер возвращает код статуса и заголовок Location, браузер мгновенно переходит. Мета-редирект (<meta http-equiv="refresh">) — инструкция внутри HTML: браузер сначала загружает и разбирает страницу, потом выполняет переход. Это медленнее, создаёт мерцание и хуже обрабатывается поисковиками. Google понимает мета-редиректы, но относит их к менее надёжным сигналам, чем HTTP 301. Для SEO и производительности всегда предпочтительнее серверный редирект.