Используя Jetty 7.0.2, я не могу установить собственный путь к файлу cookie сеанса.
Я размещаю несколько сайтов на одном сервере, используя apache для прокси-запросов в соответствующем контексте. (заменил http на htp, так как stackoverflow считает, что мои многочисленные ссылки могут быть спамом)
<VirtualHost *:80>
ServerName context.domain.com
ProxyRequests On
ProxyPreserveHost Off
<Proxy *:80>
Order deny,allow
Allow from 127.0.0.1
</Proxy>
ProxyPass / htp://localhost:8080/context/
ProxyPassReverse / htp://localhost:8080/context/
<Location />
Order allow,deny
Allow from all
</Location>
</VirtualHost>
Jetty работает на том же сервере на порту 8080, и мой контекст доступен @/context
Пользователь обращается к приложению @ htp://context.domain.com, но пристань устанавливает путь для файла cookie сеанса @ /context. Это предотвращает доступ браузера к файлу cookie, поскольку фактический путь к контексту не используется. Мне нужно переопределить настройку Jetty по умолчанию, чтобы установить файл cookie для контекста и установить путь в корне ( / ).
В моем файле webdefault.xml Jetty у меня есть следующее, что частично работает:
<context-param>
<param-name>org.eclipse.jetty.servlet.SessionCookie</param-name>
<param-value>CustomCookieName</param-value>
</context-param>
<context-param>
<param-name>org.eclipse.jetty.servlet.SessionPath</param-name>
<param-value>/</param-value>
</context-param>
Файл cookie правильно установлен с пользовательским именем, но НЕ устанавливает SessionPath. Независимо от того, какое значение я установил... он отказывается устанавливать cookie по любому пути, кроме /context.
Это сводило меня с ума, поэтому любая помощь будет принята с благодарностью.