今回取り上げる話題は「クッキー(Cookie)」です。言葉としては聞いたことはあっても、「HTTP Cookie」が何をするもので、どんな仕組みで動いていているのか、実はよく知らないという人は多いのではないでしょうか。今回はHTTPのこぼれ話、番外編みたいなものですから、ミルクティーでも飲みながら気軽に読んでください。

出所:PIXTA

HTTP Cookieとは

 これまでの連載で解説したように、HTTPはもともと、「指定されたサーバーから指定されたファイルを取ってくるだけ」のプロトコルとして開発されました。しかし、HTTP/1.0でPOST機能が追加され、HTML FORMを用いたCGIページが増えてくると、ユーザーごとに異なるデフォルト値をFORMに設定したいという要求が出てきました。例えば「掲示板」のCGIなら、一度発言した後は、ユーザー名・e-mail・Webサイトなどの項目がデフォルトで再表示されるようにしたい、といったものです。

 Cookieはそういったデータをクライアント(ブラウザー)側で保持するための仕組みです。例によって例のごとく、Netscape Communications社がブラウザーのNavigatorに実装したものが原型で、1997年にはRFC 2109として正式に仕様公開されました(※注1)

※注1:2000年には更新版のRFC 2965が公開されていますが、著者欄にもはやNetscapeの名前はなく、Bell labとEpinions.comになっています。RFC 2965ではCookie2:という新フォーマットが定義されましたが、これは結局使われることなくスルーされ、RFC 6265(2011)では公式に「なかったこと」になりました。

ここからは有料会員の登録が必要です。