У меня проблемы с сессиями. Когда я пробую свой проект из локальных источников и несколько раз обновляю JSP, содержащий следующий код:
<h1>Session ID=<%=session.getId()%></h1>
Он всегда отображает один и тот же идентификатор. Хорошо.
Проблема в том, что я развернул проект на удаленном сервере, и когда я перезагружаю тот же JSP, он возвращает мне другой идентификатор сеанса каждый раз обновляю страницу.
Удаленный сервер использует https (Сертификат SSL) и NGINX обратный прокси (если эта информация поможет ...).
Что я делаю не так?
Если потребуется дополнительная информация, сообщите мне, и я дам ее вам.
PS. Дополнительная информация: если я обращаюсь к удаленному серверу, используя его IP-адрес и порт, похоже, что это работает, предоставляя мне один и тот же идентификатор сеанса каждый раз, когда я обновляю страницу.
Я решил эту проблему, изменив некоторые файлы конфигурации в NGINX и Tomcat.
В NGINX я удалил proxy-cache
строки, которые я написал в конфигурации сервера.
В Tomcat я установил context.xml
следующим образом:
<Context path="/"
reloadable="false"
override="true"
useNaming="false"
allowLinking="true"
useHttpOnly="false"
sessionCookiePath="/"
sessionCookiePathUsesTrailingSlash="false"/>
И это работает! :)