У многих пользователей отключены куки, так что для отслеживания посетителей сайта приходится искать новые способы. К счастью, существует несколько альтернативных вариантов, которые можно комбинировать для надёжности.
Самый логичный вариант — использование соответствующие Flash Objects, которые задуманы именно как альтернатива cookies. Здесь нет ничего особо инновационного, и флэш-куки применяются уже давно. Но есть и ещё пару способов. Например, запись уникального объекта в Local Storage браузера с последующей проверкой этого объекта. Ещё один метод описывает в своём блоге британский хакер Dan Q. Он предлагает применять для установки уникальных идентификаторов перманентные редиректы с кодом HTTP 301, которые кэширует веб-браузер.
Алгоритм показан на схеме.
- Пользователь заходит на сайт.
- Сайт содержит элемент <script>, с указанием URL, где находится скрипт.
- Браузер пользователя запрашивает скрипт.
- Сервер генерирует уникальный идентификатор для этого пользователя.
- Сервер генерирует ответ HTTP 301 и сообщает браузеру, что «этот Javascript находится по другому адресу» и предоставляет новый URL, который содержит новый уникальный идентификатор.
- Браузер пользователя запрашивает новый документ (например, /javascripts/tracking/123456789.js, если уникальный ID пользователя 123456789).
- Финальный Javascript генерируется динамически и автоматически содержит ID пользователя в качестве переменной, что можно использовать для трекинга.
- Последующие запросы к серверу, даже после закрытия и повторного открытия браузера, приводят к тому, что браузер пропускает этапы с 3 по 5, потому что он закешировал редирект 301 и сразу обращается по новому адресу, который привязан к этому конкретному пользователю.
Такой способ менее надёжен, поскольку кэш браузера — не самое надёжное место для хранения идентификатора. Зато подобную систему слежения сложнее блокировать, потому что требуется изменять правила кэширования контента или блокировать скрипты.