304

Not Modified

公式
リソースに変化がないため、再送する必要がない。

HTTPステータスコード304の仕様

304 Not Modifiedステータスコードは、条件付きのGETまたはHEADリクエストを受信したことを示し、条件が偽と評価されなければ200(OK)レスポンスになったはずです。言い換えれば、リクエストは、リクエストを条件付きで行ったクライアントがすでに有効な表現を持っていることを示すので、サーバーがターゲットリソースの表現を転送する必要はありません。したがって、サーバーは、200(OK)応答の内容であるかのように、その保存された表現を使用するようにクライアントをリダイレクトしています。

304 Not Modified応答を生成するサーバーは、同じリクエストに対する200(OK)応答で送信されたであろう以下のヘッダーフィールドのいずれかを生成しなければならない(MUST):

  1. Content-Location, Date, ETag, and Vary
  2. Cache-Control and Expires (see [CACHING])

304 Not Modified応答の目的は、受信者がすでに一つ以上のキャッシュ表現を持つ場合に情報の転送を最小限にすることなので、送信者は、キャッシュ更新(ex.Cache)を導く目的でメタデータが存在しない限り、上記のフィールド以外の表現メタデータを生成すべきではありません(SHOULD NOT)。g.,304 Not Modified応答を受け取るキャッシュの要件は、[CACHING]のセクション4.3.4で定義されています。]

条件付きリクエストが、それ自身のキャッシュを持つユーザーエージェントが共有プロキシに条件付きGETを送るようなアウトバウンドクライアントから発生した場合、プロキシはそのクライアントに304 Not Modified応答を転送すべきです(SHOULD)

304 Not Modified応答はヘッダーセクションの終了によって終了します; それはコンテンツやトレーラを含むことはできません

出典・引用元はこちら 304 Not Modified HTTP Status Code は、15.4.5 のセクションで規定されています。

HTTPプロトコル

仕掛かり品

PHPで304ステータスコードを投げるには?

WebページでHTTPステータスコード304を投げるには、PHPの関数http_response_codeを使用することができます。構文は次のとおりです: http_response_code(304) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

304 HTTPステータスコードのテスト

クライアント側でHTTPステータスコード(ここでは304 Not Modified)などを表示できるようにするためには、F12で開発コンソールを開く必要があります。次に、「ネットワーク」タブに移動します。これでページを開くことができ、ネットワークタブにウェブサイト(例のindex.php)が表示されるはずです。これを選択し、次にHerderセクションを選択する必要があります。すると、ユーザーは次のような結果を見ることができます:

ステータスコード 304 Not Modified
概要
URL: https://http-statuscode.com/errorCodeExample.php?code=304
ステータス: 304 Not Modified
それらの: Network
IPアドレス: XX.XX.XX.XX
ステータスコード 304 Not Modified

304ステータスコードのブラウザ互換性

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes
Safari Yes
Chrome Android Yes
Firefox for Android Yes
Opera Android Yes
Safari on iOS Yes
Internet Yes
WebView Android Yes

プログラミング言語における定数

http.StatusNotModified
Response::HTTP_NOT_MODIFIED
:not_modified

HTTPステータスコード304に関するミームを楽しませる

ブログ記事

キャッシングとHTTPステータスコードインテリジェントなキャッシュによるウェブパフォーマンスの最適化

Webパフォーマンスとその結果としてのユーザーエクスペリエンスは、あらゆるWebサイトの成功のための中心的な側面です。このパフォーマンスに影響を与える重要な要因は、特にキャッシュ戦略の文脈におけるHTTPス...

著者: Tony Brüser
著者: Tony Brüser

トニー・ブリュザーは、HTTPステータスコードにこだわりのある熱心なウェブ開発者だ。

LinkedInGitHub