Лучшая альтернатива http_referer для внутреннего перенаправления?

после обнаружения ненадежности HTTP_REFERERМне было интересно, какова была лучшая альтернатива, чтобы указать на операцию правильный URL-адрес источника, который затем выполняет внутреннее перенаправление.
Прочитав различные темы, я понял, что единственными возможными решениями являются:

1) указать URL-адрес реферера непосредственно в качестве параметра операции.

2) создать пользовательскую систему хранения реферера, используя сессию.

На мой взгляд, первое решение логически более корректно и не имеет противопоказаний.
Использование второго решения и сохранение реферера в сеансе при каждом запросе страницы возможно из-за того, что использование сайта в хранимых реферерах различных вкладок не соответствует странице, на которую мы фактически отправляем операцию; Несмотря на эту ошибку (на мой взгляд, довольно некрасивую), это второе решение кажется наиболее рекомендованным экспертами. Зачем? Я что-то пропустил?
Спасибо всем за внимание и извините за мой низкий уровень английского.

1

Решение

хранение реферера в сеансе при каждом запросе страницы возможно, если использование сайта в разных вкладках хранимого реферера не соответствует странице, на которую мы фактически отправляем операцию; Несмотря на эту ошибку (на мой взгляд, довольно некрасивую), это второе решение показалось наиболее рекомендуемым экспертами.

Вы можете уведомить сервер об обновлении сеанса текущая страница перед уходом — таким образом, следующая загруженная страница будет знать, что было предыдущей, не передавая ничего в URL.

Тем не менее, хотя в этом решении все еще есть некоторые сбои — оно сломается при любом сбое соединения или если кто-то загрузит несколько страниц на нескольких вкладках, и запросы будут не синхронизированы (это основано на предположении, что между отправкой запроса javascript при выходе из страницы и получением сервером Запрос на загрузку следующей страницы больше ничего не происходит).

Лучшим способом было бы использовать оба — это и HTTP_REFERER как запасной вариант.

Кроме упомянутой выше прохождения текущих страниц в URL подойдет, но понятно, почему вы пытаетесь избежать этого.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]