[5] [[Cookie]] の [DFN[[CODE(HTTP)@en[Expires]] [RUBYB[[[属性]]]@en[attribute]]]]は、 設定する[[名前]]と[[値]]の組の[[有効期限]]を指定します。 * 仕様書 - [6] [[Netscape Cookie]]: [CITE[Client Side State - HTTP Cookies]] * 意味 [7] [CODE(HTTP)@en[[[Expires]]]] [[属性]]の値は [[Cookie]] が[RUBYB[妥当な生存時間]@en[valid life time]]を指定します。 この時刻を過ぎるとその [[Cookie]] は保存・送信されなくなります。 [SRC[>>6]] [8] [CODE(HTTP)@en[[[Expires]]]] [[属性]]が指定されない場合、 [[利用者]]の[[セッション]]が終了次第[[有効期限]]に達したとみなします。 [SRC[>>6]] ;; [9] [[セッション]]の終了のタイミングは規定されておらず、 [[Webブラウザ]]の実装に依りますが、 [[ブラウザ]]の[[窓]]を閉じた時などに[[セッション]]が終了したとみなすのが普通です。 * 構文 [10] [CODE(HTTP)@en[[[Expires]]]] [[属性]]の値は[[Cookieの日付形式]]の文字列です。 * メモ [1] [CITE[cookieのexpireがブラウザにより異なる - エンジニアが作る最新ITブログ by DODA]] ([TIME[2009-01-28 16:44:33 +09:00]] 版) > :ieの場合: HTTPレスポンス内のexpireを忠実に使用します。従って、「Expires=Mon, 13-Feb-2006 02:52:04 GMT」とあれば、2006/2/13の11:52:04までcookieは有効です。 :firefoxの場合: HTTPレスポンス内のexpireとdateの差を、クライアントのシステム時間に加えてcookieの有効時間を計算しています(結果から予想)。 > むかしのnn4.7もfirefoxと同じだったはず。operaはieと同じだった。 [2] [CITE[とほほのCookie入門]] ([TIME[2009-01-19 23:44:50 +09:00]] 版) >無期限という指定はできないようです。2038年以降の日付をうまく扱えないシステムもあるので、2030年頃の日付を指定しておきましょう。 [3] [CITE[教えて!北京五輪「みんなにQ&A」 クッキーの有効期限の記述について]] ([TIME[2009-02-01 21:31:33 +09:00]] 版) >IEでは、曜日は確かに 無視されているようでした(曜日をいろいろ変えても 設定日時には、クッキーが削除されました)。 [4] [CITE['''['''JavaScript + Cookie''']'''実は有効期限指定がすごく簡単だった件について / 文系大学的IT系の悲哀]] ([[LiosK]] 著, [TIME[2009-02-01 21:50:13 +09:00]] 版) >手元にあるIE6, Firefox2, Opera9で確認済み。Date#toUTCStringで有効期限が指定できるなら楽だ。