Чтобы проверить, прошёл ли человек по прямой ссылке или его перенаправил сайт, в PHP можно проверить адрес предыдущей страницы. 1 Для этого используется элемент $_SERVER['HTTP_REFERER']
. 13 В нём приводится адрес страницы, с которой посетитель пришёл на данную страницу. 1 Если переход внутренний, между страницами сайта, то этот заголовок будет присутствовать. 1 Если запрос пришёл из поисковика, закладки или по другой прямой ссылке, то этого заголовка не будет. 1
Ещё один вариант — создать переменную сеанса при посещении пользователем одной страницы, а затем на другой проверить, существует ли эта переменная сеанса. 2 Если да, то пользователь был перенаправлен с первой страницы. 2
Следует учитывать, что эти методы не гарантируют надёжность, так как поведение разных браузеров и серверов может отличаться. 1