Как убрать служебные параметры из ссылок, которыми делятся посетители
Как отличить параметры отслеживания и сессии от полезных настроек страницы, настроить кнопку «Поделиться» и проверить, что получатель открывает нужный материал без данных отправителя.

Чтобы убрать служебные параметры из ссылок, которыми делятся посетители, настройте формирование отдельного публичного адреса страницы. В нём нужно сохранить параметры, определяющие содержание, и исключить метки отслеживания, идентификаторы сессии и данные отправителя. Начните с проверки реальных ссылок, затем задайте правила для кнопок «Поделиться» и «Скопировать ссылку» и протестируйте результат без авторизации.
Удалять всё после вопросительного знака нельзя: вместе со служебными данными можно потерять выбранный товар, поисковый запрос или фильтр. Устойчивая ссылка должна открывать нужное содержание у другого человека и не зависеть от состояния браузера отправителя.
Какие части адреса нужно проверить
Параметры URL — это дополнительные значения в адресе страницы. Обычно они идут после знака ?, а между собой разделяются знаком &. Например, в условном адресе /catalog/chair?color=green&utm_source=newsletter параметр color задаёт цвет, а utm_source обозначает источник перехода.
Часть после знака # называется фрагментом. Она может вести к разделу страницы или хранить состояние интерфейса. Например, #delivery может открывать раздел о доставке. Фрагмент не передаётся серверу в обычном HTTP-запросе, но его может читать код страницы. Поэтому его тоже нужно учитывать при подготовке ссылки.
Проверяйте весь адрес, а не только участок после ?. Некоторые сайты помещают идентификатор сессии прямо в путь страницы. Кроме того, служебная ссылка может вести через промежуточный адрес, который перенаправляет посетителя дальше.
Параметры отслеживания
Метки отслеживания помогают определить, откуда пришёл посетитель. К ним относятся, например, utm_source, utm_medium и utm_campaign. Они обычно описывают рекламный переход и не определяют содержание страницы.
Если человек пересылает такую ссылку знакомому, метки исходной рассылки или объявления переходят вместе с ней. В зависимости от настроек аналитики новый визит может быть связан с этой кампанией. Для обычного обмена страницами такие метки часто можно исключить из публичного адреса.
Параметры сессии и доступа
Сессия — это способ связать действия посетителя на сайте с его текущим посещением. Идентификатор сессии может встречаться под названиями session, sid или другими именами. По одному названию нельзя достоверно определить назначение параметра: это должен подтвердить разработчик.
Отдельного внимания требуют значения, которые дают доступ: ссылки для входа, восстановления пароля, просмотра закрытого документа. Они могут содержать токен — специальное значение, используемое для проверки доступа. Такие адреса нельзя автоматически превращать в обычные публичные ссылки. Для них нужен отдельный сценарий передачи и проверки прав.
Параметры содержания
Полезные параметры определяют, что увидит получатель: вариант товара, страницу каталога, язык, поисковый запрос или набор фильтров. Их удаление может изменить смысл ссылки.
Например, адрес /catalog?category=chairs&material=wood описывает подборку деревянных стульев. Если убрать параметры, получатель откроет общий каталог. Служебных данных в адресе станет меньше, но задача посетителя останется нерешённой.
Шаг 1. Соберите ссылки из разных сценариев
Для первичной проверки достаточно браузера и возможности открыть сайт без авторизации. Разработчик понадобится, чтобы выяснить назначение неизвестных параметров и изменить формирование ссылок. Сотрудник, отвечающий за аналитику, поможет проверить, в какой момент сайт сохраняет рекламные метки.
Составьте список сценариев, в которых посетитель может передавать страницу другому человеку:
- Открывает товар после перехода из рекламы или рассылки.
- Выбирает цвет, размер или другую разновидность товара.
- Настраивает фильтры и сортировку каталога.
- Находит материал через поиск по сайту.
- Нажимает «Поделиться» или «Скопировать ссылку».
- Копирует адрес из строки браузера.
- Получает ссылку на документ или заказ в личном кабинете.
Для каждого сценария сохраните исходный адрес и ссылку, которую выдаёт интерфейс. Отдельно запишите ожидаемое содержание: например, «зелёный стул», «результаты поиска по запросу» или «публичная статья». Это позволит оценивать результат по смыслу, а не по длине URL.
Если в ссылке обнаружены возможные данные доступа, не переносите её целиком в общую переписку или таблицу. В рабочем описании замените значение пометкой вроде SESSION_VALUE. Для обсуждения правила обычно достаточно названия параметра и описания его назначения.
Шаг 2. Определите назначение каждого параметра
Создайте таблицу правил. В ней должны быть название параметра, его назначение и действие при формировании публичной ссылки. Не принимайте решение только потому, что значение выглядит длинным или случайным.
| Тип параметра | Что выяснить | Как поступить с публичной ссылкой |
|---|---|---|
Метка кампании, например utm_source |
Используется ли только для аналитики | Исключить после проверки сценария |
| Идентификатор сессии | Связывает ли адрес с текущим посетителем | Не передавать в публичном адресе |
Значение доступа, например token |
Даёт ли доступ к закрытому содержимому | Выделить в отдельный сценарий |
Вариант товара, например color |
Меняет ли выбранный товар | Сохранить, если нужен получателю |
| Фильтр или поисковый запрос | Определяет ли подборку | Сохранить для передачи этой подборки |
| Неизвестный параметр | Где создаётся и где используется | Проверить до изменения правила |
Для неизвестного параметра разработчик должен найти место, где сайт его создаёт, и место, где использует. Одинаковые названия в разных системах могут означать разные вещи. Например, ref может обозначать источник перехода, партнёра или объект, который нужно открыть.
Для публичных ссылок удобно использовать список разрешённых параметров: включать только те, которые нужны для воспроизведения содержания. Такой подход требует описать сценарии заранее, зато новые служебные значения не будут автоматически попадать в ссылку для передачи.
Если назначение адреса пока неясно, лучше временно исключить этот сценарий из общей функции «Поделиться» и разобраться с ним отдельно. Особенно это касается личного кабинета и ссылок доступа.
Шаг 3. Задайте устойчивый адрес для каждого типа страницы
Устойчивый адрес — это ссылка, которая воспроизводит нужное публичное содержание без зависимости от сессии отправителя. Он не обязательно короткий и не обязательно лишён всех параметров.
Для статьи обычно подходит постоянный путь, например /blog/link-cleanup. Для товара может понадобиться путь вместе с параметром разновидности. Для подборки — адрес категории с разрешёнными фильтрами. Главное, чтобы правила учитывали задачу человека, который делится страницей.
Условный пример для карточки товара:
- Исходный адрес:
/product/chair?color=green&utm_source=email&session=SESSION_VALUE. - Публичный адрес:
/product/chair?color=green. - Ожидаемый результат: получатель видит зелёный вариант стула, а сессия отправителя не передаётся.
Для каталога полезно решить, делится ли посетитель категорией или текущей подборкой. Если кнопка находится рядом с выбранными фильтрами, логично сохранить их. Если она относится к категории в целом, можно передавать базовый адрес категории. Подпись кнопки должна соответствовать результату.
Не включайте в обычную публичную ссылку адрес электронной почты, телефон, идентификатор посетителя или другие данные отправителя. Если они требуются внутреннему процессу, разработчик должен организовать его отдельно от передачи публичного адреса.
Шаг 4. Исправьте кнопки и места копирования ссылок
Кнопка «Поделиться» часто использует текущий адрес браузера целиком. Чтобы исключить служебные параметры, она должна получать адрес, сформированный по правилам конкретной страницы.
Один и тот же способ формирования ссылки желательно использовать во всех связанных элементах: кнопке копирования, передаче в приложение, меню публикации и публичной ссылке из карточки материала. Иначе одна кнопка выдаст устойчивый адрес, а другая сохранит идентификатор посетителя.
Разработчик может сформировать публичную ссылку из постоянного пути страницы и разрешённых параметров. Не стоит удалять куски адреса простым поиском текста: так легко повредить значения, содержащие специальные символы. Для обработки URL нужны средства, которые корректно разбирают и собирают его части.
Проверьте также ссылки внутри сайта. Карточки товаров, меню и блоки рекомендаций не должны без необходимости переносить служебные параметры на каждую следующую страницу. Иначе посетитель снова получит загрязнённый адрес, даже если кнопка копирования исправлена.
Шаг 5. Учтите копирование из адресной строки
Посетители могут обходить кнопку «Поделиться» и копировать URL прямо из браузера. Поэтому отдельная функция копирования решает только часть задачи.
Если сайт больше не нуждается в рекламных метках после их обработки, разработчик может изменить отображаемый адрес без перезагрузки страницы. Перед этим нужно убедиться, что аналитика уже получила нужные значения, а другие функции сайта от них не зависят. Также необходимо проверить кнопки браузера «Назад» и «Вперёд».
Другой вариант — перенаправлять некоторые адреса со служебными параметрами на устойчивый URL. Перенаправление означает, что сервер или сайт отправляет браузер на другой адрес. Оно подходит не для всех параметров: удаление фильтра изменит подборку, а преждевременное удаление метки может нарушить учёт рекламного перехода.
Идентификаторы сессии требуют отдельного исправления механизма сессий. Если публичные страницы получают такие значения в URL, одной очистки адресной строки недостаточно. Разработчик должен устранить необходимость переносить сессию через общедоступные ссылки и проверить существующие сценарии входа и работы сайта.
Шаг 6. Проверьте результат глазами получателя
Откройте сформированную ссылку в отдельном профиле браузера или приватном окне без авторизации. Так вы проверите, зависит ли результат от состояния браузера отправителя.
Для каждого сценария выполните проверку:
- Откройте исходную страницу и выберите нужное состояние: товар, фильтр или раздел.
- Получите ссылку через кнопку на сайте.
- Откройте её без авторизации и сравните содержание с ожидаемым.
- Проверьте адрес после загрузки: служебные значения не должны добавляться снова.
- Перезагрузите страницу и убедитесь, что нужное состояние сохраняется.
- Повторите проверку с адресом, скопированным из строки браузера.
Проверьте не только успешное открытие. Получатель не должен увидеть имя отправителя, его корзину, данные заказа или другие сведения, связанные с чужим посещением. При этом выбранная разновидность товара, фильтры и нужный раздел должны сохраниться, если они входят в смысл ссылки.
Если закрытая страница требует входа, это может быть правильным результатом. Оценивать нужно соблюдение прав доступа, а не возможность открыть любой материал без авторизации.
Что передать разработчику
В задании опишите ожидаемое поведение, а не только требование «убрать параметры». Например:
Для публичной карточки товара формировать ссылку из постоянного пути и выбранного варианта. Исключать подтверждённые параметры отслеживания и сессии. Использовать этот адрес в кнопках «Поделиться» и «Скопировать ссылку». При открытии без авторизации получатель должен видеть тот же вариант товара без данных отправителя.
Приложите таблицу параметров и примеры до и после очистки с заменёнными чувствительными значениями. Отдельно перечислите страницы, которые не входят в общее правило: вход, восстановление пароля, закрытые документы и другие ссылки доступа.
Критериями приёмки сделайте сохранение содержания, отсутствие данных посетителя, корректную работу аналитики и одинаковый результат во всех способах передачи ссылки. Это поможет проверить изменение без споров о том, насколько адрес стал «чистым».
Частые ошибки при очистке URL
Удалять всё после вопросительного знака
Такой способ подходит только для страниц, содержание которых действительно не зависит от параметров. На каталоге или карточке товара он может уничтожить выбор посетителя. Сначала определите полезные параметры, затем настройте их сохранение.
Считать канонический адрес готовым решением
Канонический адрес — это указание предпочтительного URL для поисковых систем. Сам по себе он не меняет адресную строку и не очищает ссылку, которую посетитель копирует. Кроме того, адрес для передачи выбранной подборки может отличаться от канонического: задачи у них разные.
Удалять метки до обработки аналитикой
Если сайт очищает адрес раньше, чем система аналитики прочитает метки, сведения об источнике перехода могут потеряться. Порядок действий должен проверить разработчик вместе с ответственным за аналитику. Работа кнопки «Поделиться» не должна требовать сохранения исходных меток в передаваемой ссылке.
Маскировать проблему с доступом очисткой ссылки
Если знание адреса позволяет получить чужие данные, удаление параметра из кнопки не исправляет контроль доступа. Нужна проверка на стороне системы, которая выдаёт содержимое. Публичная ссылка и разрешение на просмотр — отдельные части работы сайта.
Вопросы о служебных параметрах
Нужно ли удалять часть после знака #?
Только если она служебная или содержит данные, которые нельзя передавать. Фрагмент может указывать на полезный раздел страницы либо хранить нужное состояние интерфейса. Его назначение нужно проверить так же, как назначение параметров после ?.
Можно ли очищать ссылки вручную?
Да, если назначение удаляемых параметров известно. После изменения откройте адрес без авторизации и проверьте содержание. Для регулярного обмена лучше настроить формирование публичной ссылки на сайте: посетителям не придётся разбираться в параметрах самостоятельно.
Как исправить ссылки, которые уже отправили?
Сначала устраните источник служебных параметров. Затем решите, можно ли безопасно обрабатывать старые публичные адреса и направлять их на устойчивую версию. Если переданный адрес содержит действующее значение доступа или сессии, отдельно проверьте необходимость его отзыва: очистка новых ссылок старое значение не отменяет.
Поможет ли это продвижению сайта?
Очистка ссылок помогает упорядочить адреса и передачу страниц. Но сама по себе она не гарантирует рост позиций или трафика. Проверяемый результат этой работы — получатель открывает нужное содержание, а ссылка не переносит служебные данные конкретного посетителя.