- PR -

Cookieは20個まで保持できるが、7個以上保持するとSessionが切れる?

1
投稿者投稿内容
ほあんほあん
会議室デビュー日: 2006/08/05
投稿数: 13
投稿日時: 2006-08-22 17:49
ASPとASP.netで開発しております。
WEBサーバのIISはv6.0です。

ネットで調べてみると、20個までCookieが保持できるらしいです。
やりたいことは、10個位までCookieが保持しても、Sessionが切れないようにしたいです。(今回10個位Cookieを使用して、かつSessionを使用したい)

アプリを動作していて、6個までCookieを保持しているときは、Session値を使用して動作しているのですが、7個目を保持してから画面遷移などしてその遷移先でSession値を使用して動作しようとするとSession値がなくなってしまいます。よって正常に動作してくれなくなるのですが、Cookieとはそーゆーもの(7個以上保持するとSessionを切ってしまう)なのでしょうか?

何かの設定で私の方で6個しか使用しないように設定してしまっているのでしょうか?
やはりせっかく20個保持できるのでしたら、20個保持してもSessionを切断などしないのが正常であると思うのですが、対応策を知っている人がいたら教えてください。
宜しくお願いします。

ぽぴ王子
ぬし
会議室デビュー日: 2006/03/24
投稿数: 475
お住まい・勤務地: お住まい:城・勤務地:城
投稿日時: 2006-08-22 18:00
こんにちは。

とりあえず

引用:

ネットで調べてみると、20個までCookieが保持できるらしいです。


の裏を取ってみようと「cookie 個数」で検索してみたところ、以下のページが先
頭に来ました。
http://www.teria.com/~koseki/memo/cookie/cookie_4k.html
このページによれば、確かにクッキーの数は20個程度まではサポートする必要
があると書いてありますね。

ただ、そのすぐ下に
> 更に、4kbを超える場合、クライアントは値を4kbに収まるようにトリミングする
> と述べています。名前は4kbを超えない限り手をつけずに残します。
とありますので、クッキー全体(セッション用に使われているクッキー含む)で
4kb を超えてしまっているということはないでしょうか。

このページが正しいかどうかはわかりませんが、非常に参考になる資料であると
思います。まずは全体の大きさから調べてみてください。
_________________
ぽぴ王子@わんくま同盟
ぽぴ王子の人生プログラミング中 / ぽぴンち。
ほあんほあん
会議室デビュー日: 2006/08/05
投稿数: 13
投稿日時: 2006-08-22 18:17
早急なレスありがとうございます。

Cookieは、4KBは超過していません。
1KB程度です。
がんふぃーるど
ベテラン
会議室デビュー日: 2006/06/05
投稿数: 58
お住まい・勤務地: さいたま
投稿日時: 2006-08-22 19:11
ieHTTPHeaders等を使用してクッキーの値を調べてみてはどうでしょうか?
実際にSessionの情報が欠落しているのかどうか分かると思います。
ほあんほあん
会議室デビュー日: 2006/08/05
投稿数: 13
投稿日時: 2006-08-23 18:26
ASPにて、Session.SessionIDの値が変わっているのと、すべてのSession値が空になっているのは確認しました。

今回は開発時間があまりないので、Cookie数を6個以内に減らして対応しました。
ただ今後Cookieが増えるとまずいので何か他にいい対応策があれば、宜しくお願いします。
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2006-08-24 09:15
引用:

ほあんほあんさんの書き込み (2006-08-23 18:26) より:
今回は開発時間があまりないので、Cookie数を6個以内に減らして対応しました。
ただ今後Cookieが増えるとまずいので何か他にいい対応策があれば、宜しくお願いします。


普通に使っていれば、そんなにCookieの数が増えるはずは無いです。

普通はCookieに格納する情報は必要最低限にします。また複数の情報をCookieに格納する場合には、カンマで区切るなどしてひとつのCookieに格納します。よって生存期間が異なるCookieが複数必要じゃない限り、いくつも作ったりはしません。

・Cookieはクライアントに保存されるために情報漏えいの元になりやすい。
・Cookieは必要不要に関わらず、必ずサーバーに送信される。

上記の理由から、無駄なトラフィックの抑止や、情報漏えいを防止する意味でも格納する情報は必要最低限にします。データサイズが上限を超えることも普通はありません。
_________________
甕星 <mikahosi@abox9.so-net.ne.jp>
http://blogs.msmvp.jp/mikahosi/
1

スキルアップ/キャリアアップ(JOB@IT)