[1] HTTP の要求や応答はそもそも1組ずつそれぞれ独立したものですが、 複数の要求と応答の組の間にわたって状態 (state) を持たせたいことがあります。 その要求と応答の集合によって構成される文脈 (context) をセッション (session) といいます。
[8] 本項は過去の HTTP 仕様に関するものです。現状とは異なることがあります。
[4]
This document describes a way to create stateful sessions with HTTP requests and responses. Currently, HTTP servers respond to each client request without relating that request to previous or subsequent requests; the technique the state management mechanism allows clients and servers that wish to exchange state information to place HTTP requests and responses within a larger context, which we term a "session". This context might be used to create, for example, a "shopping cart", in which user selections can be aggregated before purchase, or a magazine browsing system, in which a user's previous reading affects which offerings are presented.
この文書は HTTP の要求と応答で状態を持ったセッション (stateful session) を作る方法を説明します。 現在、HTTP 鯖はクライアントの要求それぞれに対して、 以前や以後の要求と関連付けすることなく応答しています。 この技術この状態管理機構によって、 状態 (state) 情報を交換したいと思うクライアントや鯖は、 HTTP の要求や応答の群をより大きな文脈 (context) に配置できるようになります。 この文脈をセッション (session) と呼びます。 この文脈は例えば「買い物籠」といって利用者が選択したものを購入前に集めておくために使うことができますし、 雑誌閲覧システムで利用者の閲覧履歴に基づきどの雑誌を候補として提示するかを決めるために使うこともできます。
There are, of course, many different potential contexts and thus many different potential types of session. The designers' paradigm for sessions created by the exchange of cookies has these key attributes:Each session has a beginning and an end.Each session is relatively short-lived.Either the user agent or the origin server may terminate a session.The session is implicit in the exchange of state information.
There are, of course, many different potential contexts and thus many different potential types of session. The designers' paradigm for sessions created by the exchange of cookies has these key attributes:
もちろん文脈となり得るものは色々ありますし、ひいてはセッションの種類も色々となるでしょう。 Cookie の交換によって作られるセッションの設計者のパラダイムにはいくつか鍵となる属性があります。
Neither clients nor servers are required to support cookies. A server MAY refuse to provide content to a client that does not return the cookies it sends.
クライアントと鯖のいずれも、Cookie への対応は必須ではありません。 鯖は、自身が送信した Cookie を返さないクライアントに内容を提供することを拒んでも構いません。
[6] RFC 2109 や RFC 2965 は Cookie を「セッション」の概念に基づき説明しています。 元々の Netscape Cookie の説明でも「セッション」という言葉は出てきてはいるのですが、 IETF の RFC の仕様ではもっと色濃く「セッション」ベースになっています。
[7] しかし「セッション」の開始や終了といった概念に基づく説明は、 送られてきたら送り返すという実際の Cookie の仕組みとちょっと距離があるように思えます。