RFC 2822メールおよびHTTP用日付フォーマット

メールヘッダー、HTTPヘッダー、RSSフィードで使用されるRFC 2822日付フォーマットを理解します。構造、タイムゾーン略語、コードでの生成方法を解説。

Standards

詳細な説明

RFC 2822 — メールおよびHTTP日付フォーマット

RFC 2822(およびその前身RFC 822)は、インターネットメールヘッダー、HTTPプロトコルヘッダー、RSS/Atomフィードで使用される日付フォーマットを定義しています。新しいAPIではISO 8601ほど普及していませんが、メールとWebインフラストラクチャでは依然として重要です。

フォーマット構造

Sat, 28 Feb 2026 14:30:00 +0900

内訳:

  • Sat — 3文字の曜日略語(任意)
  • 28 — 月の日(1または2桁)
  • Feb — 3文字の英語月名略語
  • 2026 — 4桁の年
  • 14:30:00 — 24時間形式の時刻
  • +0900 — タイムゾーンオフセット(コロン区切りなし)

ISO 8601との主な違い

特徴 ISO 8601 RFC 2822
数値(02 英語略語(Feb
区切り T スペース
タイムゾーン +09:00またはZ +0900または略語
曜日 含まれない オプションの接頭辞
ソート可能 はい いいえ(パース必要)

各言語のパターン

言語 パターン
JavaScript (date-fns) EEE, dd MMM yyyy HH:mm:ss xx
Python %a, %d %b %Y %H:%M:%S %z
Java EEE, dd MMM yyyy HH:mm:ss XX
PHP D, d M Y H:i:s O
Go Mon, 02 Jan 2006 15:04:05 -0700

ユースケース

RFC 2822フォーマットはメールのDateヘッダー(SMTP)、HTTPのDateヘッダー(Last-Modified、Expires、Date)、RSSフィードのpubDate要素、CookieのExpiresに必要です。メール処理やHTTPキャッシュ実装には不可欠なフォーマットです。

試してみる — Date Format Reference & Tester

フルツールを開く