2

私のJSP/サーブレットアプリケーションでは、一部のページは https であり、他のページは http のみです。ログイン ページは https ですが、ログインして http ページにリダイレクトすると、セッションが維持されないことに気付きました。

4

2 に答える 2

1

機密性が失われるため、HTTPS から HTTP に移行しないでください。

それでもこれを行いたい場合は、セッション ID をログイン (HTTPS) からリダイレクトされたページ (HTTP) に手動で渡すことができます。

SSL セッション ID (属性名 - javax.servlet.request.ssl_session_id) は公開されるべきではないため、HTTP に引き継がれません。

于 2013-02-25T13:16:38.647 に答える
0

これは、リダイレクトURLにjsessionidがないためです。

これを試して

response.sendRedirect(response.encodeRedirectURL(contextPath + "/myServlet"));

ただし、URLでセッションIDを公開しているため、 セッション固定攻撃のためにWebアプリを公開していることに注意してください。

于 2013-02-26T04:13:25.543 に答える