@Vodol

Умеет ли nginx «запоминать» пользователя?

Всем привет.
Когда пользователь заходит на сайт напрямую, значение $http_referer будет пустым. А когда он перейдет на внутреннюю страницу сайта, $http_referer будет равен адресу первой страницы. Умеет ли nginx каким-либо образом запоминать или помечать пользователей, чтобы, например, если пользователь зашел изначально напрямую, а затем стал ходить по сайту, nginx понимал, что это все тот же пользователь, у которого изначально был пустой реферер?

Всё это нужно для того, чтобы с помощью sub_filter изменять некоторые элементы сайта в зависимости от значения http_referer.
  • Вопрос задан
  • 161 просмотр
Пригласить эксперта
Ответы на вопрос 3
yarkov
@yarkov
Помог ответ? Отметь решением.
Куки ставьте
Ответ написан
Комментировать
ky0
@ky0 Куратор тега Nginx
Миллиардер, филантроп, патологический лгун
Это, в целом, задача не нгинкса, а бэкэнда - что-то менять в зависимости от пользователя. И, как верно заметили выше - куки для этого подходят куда больше.
Ответ написан
gedev
@gedev
сисадмин-энтузиаст
Тут вопрос касается не столько работы Nginx, сколько протокола HTTP. HTTP не "запоминает" клиента. Nginx лишь может записать реферера, отсюда у вас есть информация о том, откуда пришёл клиент. Дальше на сайте клиент делает новый запрос, который никак не связывается с предыдущим. Поэтому, как верно подсказывают, реализацию вашей задачи надо выполнять на уровне приложения.
От себя добавлю, что перекладывать часть функционала приложения на веб-сервер это не очень хорошая идея.

HTTP не сохраняет своего состояния. Это означает отсутствие сохранения промежуточного состояния между парами «запрос-ответ».

Тык, тык.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы