есть ли какие-либо настройки сервера, которые необходимо изменить для управления сеансом - PullRequest
0 голосов
/ 27 ноября 2009

Я разработал приложение с JSP и Flex. В этом приложении Flex взаимодействует JSP со службой HTTP. Я развернул приложение на одном сервере, этот URL-адрес сервера с HTTP, он работает нормально. Но когда я развернул этот проект на другом сервере (HTTPS), приложение не запустилось. Там в JSP сеанс не обрабатывается. Есть ли какая-либо конфигурация сервера, которую нужно проверить?

1 Ответ

0 голосов
/ 27 ноября 2009

Понятия не имею, о чем вы говорите "сессия не обрабатывается". Пожалуйста, опишите проблему с точки зрения разработчика, а не с точки зрения конечного пользователя. Что именно происходит? Что именно не происходит?

Я могу, по крайней мере, сказать, что сессии обычно поддерживаются файлами cookie. Файлы cookie в свою очередь обычно привязаны к определенному домену и пути. Файлы cookie не зависят от используемого протокола. Грубо говоря, если веб-контейнер создал cookie для отслеживания HttpSession, он будет по умолчанию использовать request.getServerName() в качестве домена cookie и request.getContextPath() в качестве пути cookie.

Так, если, например, у вас есть это веб-приложение на http://example.com/context, то файл cookie будет создан для хоста example.com и пути /context. Независимо от протокола. Но когда вы запускаете запрос на http://example.com/anothercontext, по умолчанию вы не получите тот же cookie-файл и, следовательно, не тот же сеанс.

Однако большинство веб-контейнеров предоставляют параметры конфигурации, которые могут влиять на хост и путь файла cookie. Например, Tomcat поддерживает атрибут emptySessionPath в HTTP-коннекторе , поэтому путь к файлам cookie всегда равен /. Таким образом, http://example.com/context и http://example.com/anothercontext смогут совместно использовать одни и те же файлы cookie и, следовательно, также сеанс.

Это знание того, как все это работает "под капотом", должно дать лучшее понимание вашей проблемы и, таким образом, также облегчить выявление основной причины.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...