web-dev-qa-db-ja.com

ApacheサーバーがブラウザからCookieを読み取れない

Cookie(Spring Security)を使用したログイン認証ページを開発しました。このページでは、ユーザーは初めて認証を受ける必要があります。ユーザーが正常に認証されると、同じブラウザーからの後続の各リクエストで、ユーザーは成功ページにリダイレクトされます。コードは正常に動作しています

localhost:8080 

しかし、問題は、Apache HTTPサーバーを構成しているため、Apacheサーバーを介してアプリケーションにリクエストを送信すると、ApacheサーバーによってCookieが読み取られないと考えられることです。

Httpd.confファイルのCookieも有効にしました(ただし、機能していません)。

LoadModule usertrack_module modules/mod_usertrack.so

そして

<VirtualHost *>
    ServerName localhost
    CookieTracking on
    ProxyPass / http://localhost:8080/stackoverflow/
</VirtualHost>

何が間違っているのか教えてください

2
Bhuvan

Localhost上のサーバーは、ほとんどの場合、localhostまたはstackoverflowディレクトリのCookieを書き込んでいます。リバースプロキシの背後からアクセスされる場合、これを認識し、Cookieに正しいドメイン名を設定する必要があります。

ポート8080のWebアプリに存在するこのためのスマートの代わりに、リバースプロキシにCookieを変換させることができます。

ProxyPassReverseCookiePath /stackoverflow /
ProxyPassReverseCookieDomain localhost example.com

StackOverflowの この質問 を参照してください。jsessionidクッキーについて質問し、リバースプロキシでこの手法を使用して問題を解決しました。

1