0

つい最近、Web2.4からWeb3.0に移行しました。この移行の要件の1つは、アプリケーションに「httponly」Cookieを導入する必要があるということでした。そこで、次のsessionconfig要素をweb.xmlに追加しました

<session-config>
<session-timeout>240</session-timeout>
<cookie-config>
        <http-only>true</http-only>
        <secure>true</secure>
</cookie-config>
<tracking-mode>COOKIE</tracking-mode>
</session-config>

上記のsessionconfigをweb.xmlに追加すると、予期しないタイムアウトが発生します。アプリケーションにログインできますが、その後、他の何かをクリックすると、「SessionExpired」というメッセージが表示されます。私は何か間違ったことをしていますか?どんな助けでも大歓迎です

4

2 に答える 2

1

<secure>true</secure>これは、ブラウザがHTTPS経由でのみCookieをサーバーに送り返し、HTTP経由ではないことを意味します。したがって、HTTP経由でサイトにアクセスしている場合、ログイン後にCookieは送信されません。

于 2012-10-14T06:24:52.227 に答える
0

私はDesislavKamenovに同意します。私はHTTPを介してこの問題に直面し、trueを削除すると機能しました。したがって、HTTPとHTTPSの両方の正しい構成は次のとおりです。

HTTP:-

<session-config>
<cookie-config>
    <http-only>true</http-only>
</cookie-config>
</session-config>

HTTPS:

<session-config>
<cookie-config>
    <http-only>true</http-only>
     <secure>true</secure>
</cookie-config>

于 2015-07-01T12:27:51.273 に答える