Редирект 301 постоянный, а 302 временный - и для сервиса сокращения URL это однословное различие определяет, передают ли ваши ссылки сигналы ранжирования, насколько агрессивно их кэшируют браузеры и можете ли вы безопасно изменить их назначение позже. 301 говорит: «это переехало навсегда, отправьте SEO-ценность на новый адрес». 302 говорит: «это объезд, сохраните оригинал». Оба доставляют посетителя в одно место - просто рассказывают машинам две противоположные истории.
Для коротких ссылок выбор неочевиден, и популярный совет - «всегда используйте 301 для SEO» - достаточно часто оказывается неверным, чтобы быть опасным. 301 жёстко кэшируется браузерами, что отлично для скорости и ужасно в тот день, когда нужно перенаправить редактируемую ссылку. Реальный ответ зависит от того, является ли ссылка постоянной или редактируемой, - и об этом этот пост на самом деле.
Я работаю над путём редиректа, поэтому буду держаться ближе к тому, что происходит на уровне протокола, а не в SEO-фольклоре. Если хотите сначала посмотреть на общую картину, статья вредят ли сервисы сокращения URL для SEO охватывает сторону репутации, а достижение p95 менее 15ms для редиректов - сторону скорости. Здесь мы сосредоточены на коде состояния.
Что такое редирект 301
301 - это код состояния «Moved Permanently» («Перемещено постоянно»). Когда сервер отвечает на запрос кодом 301 и заголовком Location, он делает весомое заявление: этот ресурс теперь постоянно находится по новому URL, и новый следует считать каноническим.
Из этого заявления следуют два последствия. Поисковые системы передают сигналы ранжирования - авторитет и обратные ссылки, накопленные старым URL, - на место назначения. Именно поэтому 301 является стандартным решением для миграций сайтов и переключений на HTTPS. Браузеры кэшируют редирект, иногда очень надолго, поскольку «постоянный» воспринимается буквально. В следующий раз, когда посетитель перейдёт по ссылке, браузер может даже не обращаться к вашему серверу - он сразу прыгает на кэшированное место назначения. Механика подробно описана в руководстве MDN по HTTP-редиректам, а исходное определение - в RFC 7231, раздел 6.4.2.
Это кэширование - преимущество для постоянной ссылки и ловушка для редактируемой. Запомните это - это ключ к решению для короткой ссылки.
Что такое редирект 302
302 - это «Found» («Найдено»), временный редирект. Он отправляет посетителя дальше точно так же, как 301, но сообщение машинам противоположное: это краткосрочное соглашение, исходный URL вернётся, поэтому сохраните его в индексе и не кэшируйте редирект как постоянный.
Стоит упомянуть более точный родственный код. 307 - строгий временный редирект: то же намерение, что и у 302, но он гарантирует сохранение HTTP-метода, поэтому POST остаётся POST. Для коротких ссылок, которые являются обычными GET-запросами, 302 и 307 неотличимы на практике. Различие значимо для API и форм, а не для маркетинговой ссылки. Для формального определения RFC 7538 определяет постоянный вариант 308, а временный 307 стоит рядом с ним. Полная карта всех кодов редиректов, включая клиентские, - в типах URL-редиректов.
Главное свойство 302 - он не прилипает. Браузеры перепроверяют его, что означает: в день изменения места назначения возвращающиеся посетители сразу следуют новому адресу. Никакого кэшированного объезда к старому месту.
301 против 302 для SEO: какой передаёт ссылочный вес
Вот часть, которую все ищут на самом деле. Классическое правило - 301 передаёт сигналы ранжирования, а 302 нет. Это было строго верно годами и по-прежнему является безопасным допущением для планирования. Google с тех пор заявил, что 301 передают сигналы ранжирования и что устойчивые 302 в конечном счёте тоже - но «в конечном счёте» делает много работы, а вы не контролируете сроки.
Поэтому практическое SEO-резюме умещается в одну таблицу.
| Свойство | 301 (постоянный) | 302 (временный) | 307 (временный, строгий) |
|---|---|---|---|
| Передаёт сигнал ранжирования | Да, полностью и быстро | Медленно, только если устойчивый | Медленно, только если устойчивый |
| Поисковая система сохраняет старый URL в индексе | Нет, заменяет на целевой | Да, ожидает возврата | Да, ожидает возврата |
| Кэширование браузером | Агрессивное, может залипать | Не кэшируется как постоянный | Не кэшируется как постоянный |
| HTTP-метод сохраняется | Не гарантировано | Не гарантировано | Гарантировано |
| Подходит для | Окончательного перемещения | Временного перемещения | Временных перемещений для POST/API |
Вывод не «301 хорошо, 302 плохо». Вывод - «соответствуйте коду реальности». Если перемещение постоянное, 301 чисто и быстро передаёт сигнал. Если временное, 302 сохраняет место исходного URL в индексе. Использовать 301 для чего-то, что вы отмените, или 302 для чего-то постоянного - вот как редиректы тихо обходятся ценой ранжирования.
Подвох с короткими ссылками: кэширование против редактируемости
Теперь примените всё это к короткой ссылке, где правила сталкиваются.
Лучшая функция управляемой короткой ссылки - вы можете изменить её место назначения после того, как поделились ею. Печатный флаер, QR-код на упаковке, ссылка в запланированном посте - вы не можете отозвать их, но можете перенаправить ссылку, которую они несут. Эта редактируемость ценнее маргинального SEO-выигрыша для большинства маркетинговых ссылок, и стратегия предотвращения ссылочного гниения целиком на ней строится.
Жёстко кэшированный 301 нарушает это обещание. Если браузер посетителя закэшировал 301 на старое место назначения, перенаправление ссылки ничего ему не даст - он продолжит попадать на устаревшую страницу, пока кэш не истечёт, а вы не можете это принудить. Именно этого и избегает 302. Поскольку браузер никогда не считает 302 постоянным, ваше изменение вступает в силу для всех при следующем клике. Вот почему многие сервисы сокращения, включая наш, по умолчанию используют для редактируемых ссылок временный редирект: ссылка остаётся под вашим контролем. Уровень редиректа разрешает текущее назначение при каждом запросе, поэтому изменение вступает в силу в момент сохранения - стратегия кэширования за этим описана в нашем уровне кэша для редиректов.
Если вы хотите ссылки, которые остаются редактируемыми и при этом разрешаются менее чем за десять миллисекунд, создайте бесплатный воркспейс Elido и создайте свою первую короткую ссылку.
Какой редирект использовать для коротких ссылок
Отбросьте теорию - всё сводится к одному вопросу: может ли когда-нибудь измениться место назначения этой ссылки?
- Никогда не изменится - постоянная vanity-ссылка на вашу главную страницу, вечная ссылка в книге. Используйте 301. Вы получаете полную быструю передачу сигнала ранжирования и бонус скорости от кэширования браузером, не теряя ничего, ведь вы всё равно не собирались её перенаправлять.
- Может измениться - любая ссылка для кампании, любая редактируемая короткая ссылка, всё, что вы захотите исправить без переиздания. Используйте 302. Вы жертвуете долей немедленной SEO-передачи ради гарантии, что изменение дойдёт до каждого посетителя мгновенно.
Для подавляющего большинства коротких ссылок - URL кампаний, умных ссылок с маршрутизацией по стране или устройству, всего на пользовательском домене, которым вы активно управляете, - редактируемость побеждает, поэтому 302 является разумным выбором по умолчанию. Оставьте 301 для действительно постоянного. А если вы только начинаете, статья как сократить URL охватывает процесс создания, который стоит перед всем этим.
Как проверить, какой редирект использует ссылка
Никогда не верьте словам сервиса на слово. Спросите ссылку напрямую с помощью HEAD-запроса:
curl -sI "https://go.yourbrand.com/spring"
Первая строка ответа - это код состояния: HTTP/2 301, HTTP/2 302 или HTTP/2 307, - а заголовок Location показывает, куда она ведёт. Если вы видите цепочку редиректов, каждый переход - это отдельный ответ, и каждый дополнительный переход добавляет задержку и шанс утечки или потери сигнала. Чистая короткая ссылка - это один переход: с короткого URL на конечное место назначения, ничего между ними. Слежение за цепочками редиректов - часть того, как короткие ссылки разрешаются изнутри, а сохранение цепочки в один переход - половина причины, по которой наша задержка редиректа остаётся низкой.
Мысленная модель - это весь пост: 301 - обещание, которое нельзя взять обратно, 302 - обещание, которое можно. Выберите то, что соответствует тому, разрешено ли ссылке меняться, проверьте через curl - и ваши редиректы будут делать то, что вы задумали, а не то, что вы предполагали.
Ещё по теме в блоге
- Вредят ли сервисы сокращения URL для SEO? Честный ответ
- Достижение p95 менее 15ms для редиректов из FRA, ASH и SGP
- Стратегия кэша для URL-редиректов: L1 LRU + L2 Redis
- Как работают сервисы сокращения URL изнутри
- Предотвращение ссылочного гниения: как поддерживать короткие ссылки живыми
- Типы редиректов: 301, 302, 307, 308 и meta refresh
- Уязвимости открытого редиректа и как их предотвратить
- Петля редиректов: как найти и исправить ERR_TOO_MANY_REDIRECTS
- Как перенаправить URL: шесть способов, и когда какой из них уместен
Частые вопросы
В чём разница между редиректом 301 и 302?
301 - постоянный редирект: он сообщает браузерам и поисковым системам, что ресурс перемещён навсегда, поэтому они передают сигналы ранжирования на новый URL и агрессивно кэшируют редирект. 302 - временный редирект: он говорит, что перемещение краткосрочное, поэтому системы сохраняют исходный URL в индексе и не кэшируют редирект так, как постоянный. Код состояния - единственное различие на уровне протокола, оба отправляют посетителя в то же место, - но машинам они рассказывают две противоположные истории о постоянстве.
Какой редирект должен использовать сервис сокращения URL: 301 или 302?
Зависит от того, может ли измениться место назначения ссылки. Для постоянной короткой ссылки, которая всегда будет указывать на одно место, правильным выбором является 301 - он передаёт максимальный сигнал ранжирования и быстрее для повторных посетителей, поскольку браузеры его кэшируют. Для редактируемой короткой ссылки, назначение которой вы можете изменить позже, безопаснее использовать 302, так как кэшированный 301 может оставить возвращающихся посетителей на старом месте назначения после изменения. Многие сервисы сокращения по умолчанию используют именно 302 по этой причине.
Передают ли редиректы 301 SEO-ценность на место назначения?
Да. Google подтвердил, что редиректы 301 передают сигналы ранжирования на целевой URL, и в текущей практике 302 тоже передают - но медленнее и менее надёжно. Безопасное правило не изменилось: если перемещение постоянное, используйте 301, чтобы сигнал передался быстро и чисто. Рассчитывать на 302 для консолидации ранжирования - значит делать ставку на поведение систем, которое вы не контролируете.
Вредит ли редирект 302 для SEO?
Сам по себе нет, но может навредить, если использовать его для постоянного перемещения. Поскольку 302 сигнализирует о временности, поисковые системы могут сохранить исходный URL в индексе и задержать передачу сигналов ранжирования на место назначения. Для действительно временного редиректа - кампании, страницы обслуживания, A/B-теста - 302 является правильным инструментом и ничему не вредит. Ущерб возникает от несоответствия кода реальному намерению.
Что такое редирект 307 и чем он отличается от 302?
307 - это современный временный редирект. Он делает то же самое, что и 302 - временно отправляет посетителя в другое место, - но с одной строгой гарантией: HTTP-метод сохраняется, поэтому POST остаётся POST, а не превращается в GET. Для обычных коротких ссылок, которые являются GET-запросами, 302 и 307 ведут себя одинаково. Различие важно для API и форм, а не для маркетинговой короткой ссылки.
Как узнать, какой редирект использует короткая ссылка?
Отправьте HEAD-запрос и прочитайте строку статуса. Команда curl -I против короткой ссылки вернёт код редиректа - 301, 302 или 307, - а также заголовок Location с местом назначения. Это самый быстрый способ убедиться в том, что на самом деле делает сервис сокращения, перед тем как доверять ему ссылки, важные для SEO.
Попробуйте Elido
Вставьте URL - получите короткую ссылку
Без регистрации. Ссылка живёт 30 дней. Зарегистрируйтесь, чтобы оставить её навсегда.
Бесплатно, без регистрации · 2 в день