Переезд сохраняет путь карточки, но стирает ?variant=blue. Покупатель получает базовый товар вместо выбранного варианта. Для SEO и продукта различайте параметры аналитики, фильтры, язык и идентификаторы вариантов: одинаковая политика удаления query string может нарушить важный сценарий.
Составьте словарь параметров и их владельцев
Составьте словарь параметров и их смысл. Решите, какие нужны назначению, какие можно удалить, а какие нельзя переносить между доменами по требованиям приложения. Токены доступа и подписи не включайте в публичные отчёты.
При проверке серверного редиректа нужно учитывать фактическое назначение, указанное в Location. Официальная документация.
Рассмотрите старый адрес /item/a?variant=blue&utm_source=mail. Первый ключ выбирает вариант товара, второй описывает источник перехода. Их отсутствие имеет разные последствия. Добавьте page, language, sort и служебную подпись, если сайт действительно использует их. Для каждого определите потребителя значения и допустимое поведение после переезда. Не переносите весь query string автоматически, если новый домен обрабатывает его иначе. Но и очистка всех параметров ради единого URL может уничтожить выбор человека. Таблица семантики должна предшествовать серверному правилу.
Какие значения меняют содержание назначения
Учебные сценарии в таблице задают ожидаемое поведение; фактические ответы своего сайта заносите отдельно.
| Сценарий | Отличие | Решение | Проверка |
|---|---|---|---|
| ?variant=blue | Выбранный вариант | Сохранить или сопоставить | Правильный товар |
| ?page=2 | Другая часть списка | Сохранить смысл | Правильная страница |
| ?utm_source=mail | Аналитическая метка | Отдельная политика | Проверить учёт перехода |
| ?token=... | Доступ или подпись | Проверить требования | Не публиковать значение |
Для product variant проверьте, меняются ли изображение, цена, наличие и идентификатор покупки. Для page — состав выдачи, для sort — порядок, для UTM — учёт источника в предусмотренной аналитике. Не выводите влияние из имени ключа: конкретное приложение может использовать нестандартные обозначения. Параметр currency способен менять отображаемые значения и требует отдельного решения. В матрице добавьте вариант без параметра как базовое состояние. Сравнение с ним показывает, сохранил ли переезд важный выбор или незаметно сбросил его к настройке по умолчанию.
Проверьте Location и итоговое состояние страницы
Откройте старые URL с каждым значимым параметром и проверьте Location и конечное состояние страницы. Сравните прямое открытие нового адреса. Проверьте повторяющиеся ключи, пустые значения и кодирование кириллицы.
Сначала запишите Location исходного ответа, затем откройте конечный URL и проверьте видимый результат. Клиентский код может восстановить выбор из localStorage, поэтому приёмка включает чистый сеанс без старых настроек. Сравните также прямое открытие нового адреса. Если Location содержит variant, а страница его игнорирует, дефект находится на стороне назначения. Если параметр исчез до назначения, смотрите редирект или промежуточное правило. Такая локализация помогает передать задачу правильному владельцу и не изменять одновременно сервер, router и форму выбора.
Учебные пары для варианта товара и UTM
Учебный URL старой карточки содержит variant=blue и utm_source=mail. Сначала согласуйте судьбу обоих параметров отдельно, затем проверьте редирект. Зелёный HTTP-статус не подтверждает правильный цвет товара.
В учебном тесте подготовьте красный и синий варианты одной карточки. Старые URL должны приводить к соответствующим новым состояниям. Отдельная пара содержит UTM при одинаковом варианте: вид товара не меняется, а политика учёта проверяется отдельно. Добавьте неизвестный variant, для которого приложение имеет согласованный fallback. Проводите проверку без реальной покупки: достаточно подтверждённых изображения, названия выбранного варианта и данных кнопки. Для корзины используйте предусмотренный безопасный тест, не создавая заказов только ради проверки сохранения query string.
Перенос, переименование и удаление параметров
Исправьте правило перенаправления с явной политикой query string. Если имя параметра изменилось, используйте согласованное сопоставление, а не механическое копирование. Отдельно протестируйте корзину, фильтры и выбор вариантов.
Если новый сайт переименовал variant в color, настройте явное соответствие ключей и значений. Например, blue может перейти в внутренний идентификатор 12 только после подтверждения справочника. Прямое копирование строки не решает изменение модели данных. Для удаляемых UTM запишите, где учитывается источник до очистки, если такой процесс предусмотрен. Токены и подписи между доменами проверяются по требованиям конкретного протокола: их нельзя механически переносить в чужую область. В настройке редиректа должны быть понятные правила для известных ключей и определённое поведение неизвестных.
Проверьте кодирование и повторяющиеся значения
UTM не следует автоматически считать равнозначным variant или page. Отсутствие метки может влиять на аналитику, а отсутствие варианта — на само содержание; последствия нужно описать раздельно.
Испытайте пробел, кириллицу, знак плюс, символ & внутри закодированного значения и повторяющиеся ключи. Сравните разобранное значение до и после, а не только количество символов строки. Ручная сборка Location через конкатенацию часто повреждает кодирование. Используйте стандартные механизмы URL и проверяйте выходной ответ. Для подписанных запросов точное представление может иметь значение; не нормализуйте их без документации владельца. В логах теста замените чувствительные значения безопасными обозначениями, сохранив только данные, необходимые для объяснения ошибки и её воспроизведения.
Приёмка пользовательского действия, а не одной строки
Принятый редирект сохраняет согласованное состояние пользователя в чистом сеансе. Контрольные варианты не превращаются в базовую карточку, page не становится первой страницей, язык не теряется случайно. Отдельно подтвердите политику аналитических меток. В отчёте укажите исходный URL, Location и видимый результат назначения. Сам по себе 301 или 200 не отвечает, получил ли человек нужный вариант. После следующего изменения справочника вариантов повторите выбранные пары: ошибка может вернуться на уровне mapping, даже когда серверное правило осталось прежним.
Критерии завершения проверки
Значимые параметры приводят к ожидаемому состоянию назначения; удаляемые параметры удаляются по принятой политике. Кодирование не повреждено, приватные значения не попали в журнал проверки.
- ?variant=blue: Правильный товар. Зафиксируйте фактический результат и адрес проверенного сценария.
- ?page=2: Правильная страница. Зафиксируйте фактический результат и адрес проверенного сценария.
- ?utm_source=mail: Проверить учёт перехода. Зафиксируйте фактический результат и адрес проверенного сценария.
- ?token=...: Не публиковать значение. Зафиксируйте фактический результат и адрес проверенного сценария.
Для смежных вопросов: Как использовать reChecker для анализа редиректов и Параметры URL и SEO: фильтры, UTM-метки и дубли — как не убить индексацию. Отдельные проверки сайта собраны на странице технического аудита reChecker.