Apache ProxyPass и сессии - PullRequest
       336

Apache ProxyPass и сессии

8 голосов
/ 30 декабря 2011

Итак, я использую Apache для прокси определенной папки к экземпляру Glassfish. Правила в моей конференции:

ProxyPass /folder http://localhost:28083
ProxyPassReverse /folder http://localhost:28083
ProxyPassReverseCookiePath /folder http://localhost:28083

Работает нормально, кроме сессий. Для каждой подпапки создается новый сеанс.

Таким образом, пока я остаюсь в одной папке, сеанс сохраняется, но как только я перехожу в другую папку, создается новый сеанс.

Как мне иметь один сеанс для всех подпапок?

Ответы [ 2 ]

4 голосов
/ 18 декабря 2015

Как уже упоминалось в covener, вторым параметром ProxyPassReverseCookiePath должен быть путь.Имейте в виду, что параметры переключаются по сравнению с другими директивами, поэтому в вашем случае это будет:

ProxyPassReverseCookiePath / /folder

(Технически, это не должно быть необходимым для его работы, так как куки с пути / также доступны в /folder/, но это может привести к тому, что они будут вмешиваться в файлы cookie других веб-приложений, которые вы используете в том же домене.)

Кроме того, вы можете преобразовать домен cookieа также (если вы не обращаетесь к своему приложению только через http://localhost/folder/):

ProxyPassReverseCookieDomain localhost example.com

example.com - это домен, к которому осуществляется доступ к вашему веб-приложению.

1 голос
/ 01 июля 2012

Второй параметр ProxyPassReverseCookiePath должен быть просто путем, а не полным URL-адресом.Apache не может правильно исправить путь, запеченный в cookie, с текущим недопустимым использованием.

...