よくある質問| エリアビイジャパン株式会社 / /

よくある質問

606092 Cookieのパス編集とはどのような機能ですか

“SWANStorサーバの管理画面の「リバースプロキシ」には「Cookieのパス編集」という項目があります。デフォルトでは「有効」にチェックが入っています。

この機能は「マルチWeb機能」と組み合わせて使われます。

「マルチWeb機能」を有効にした場合、SWANStorではWebアプリケーションへのアクセスURLを次のように編集します。

元のURL:http://internal-server/internaldoc/     ->    編集後のURL: https://ご利用のSWANStorゲートウエイ名/http://internal-server/internaldoc/

こうすることで上記のURLリンクをアクセスユーザがクリックした場合、SWANStorシステムはユーザリクエストを振り分けるべき実WebアプリケーションサーバをURLの情報から得ることができるようになります。マルチWeb機能については関連FAQもご参照ください。

このとき、WebアプリケーションがSet-Cookieコマンドを応答している場合、SWANStorはこれについても次のような編集を行っています。

元のSet-Cookie値の例:
Set-Cookie: SampleID=12345; path=/

編集後のSet-Cookie値の例:
Set-Cookie: SampleID=12345; path=/http://internal-server/

しかし、アプリケーションのページ構成によってはURLの編集がうまくいかず、アクセスユーザがクリックするURLが次のような形式になってしまっている場合があります。

https://ご利用のSWANStorゲートウエイ名/internaldoc/

つまりURLパスの部分が異なっているのですが、こうした場合でもSWANStorではそのアクセスが継続できるような仕組みは備えていますが、上記のようなアクセスでは、Set-Cookie値をSWANStorサーバが編集した場合には、Cookieの属性が異なるため、アクセスユーザのブラウザはSampleID Cookieを送信しません。このことで、Webアプリケーションからエラーが返されてしまう場合があります。

「Cookieパスの編集」機能の「有効」チェックを外した場合には、SWANStorサーバはSet-Cookie値の編集を行わないようになります。これにより、URLの編集がうまくいかなかった場合でもアクセスユーザのブラウザはCookieを送信するようになり、正しくアクセスができるようになります。

ただし「Cookieパスの編集」機能の「有効」チェックを外した場合には、次のような点を考慮する必要があります。

1)利用している一つのWebアプリケーションが割り振ったCookie値が、別のWebアプリケーションアクセス時にも送信されてしまう
2)従って、例えば同じ種類のWebアプリケーションを複数、別のマシン上で運用している場合、それぞれが同じ名前だが値の異なるCookieを割り当てるべきなのに、SWANStor経由では常に値が1個だけ送信されてしまう(値が上書きされてしまう)”

Updated on 12月 4, 2023