1. ホーム
  2. 記事一覧
  3. 【徹底解説】ステータスコード3xxについて詳しく

2023.08.31

【徹底解説】ステータスコード3xxについて詳しく

  • WEB

こちらの記事では300番代のステータスコード(以下、ステータスコード3xx)について解説を行います。

ステータスコード3xxは、「リダイレクト(転送)」が行われた事を表します。例えばブログのコンテンツを移転した場合に、移転先にリクエストを転送していることを表す用途があります。

httpステータスコードについての解説ははこちらの記事をご覧ください。

https://envader.plus/article/29

主要なステータスコード3xx

  • 301 Moved Permanently
  • 304 Not Modified
  • 308 Permanent Redirect

301 Moved Permanently

301 Moved PermanentlyとはWebサイトの移転に伴って旧URLから新URLに変更した際に、恒久的なURL変更を表すステータスコードです。

例えばWebサイトのURLを「example.com/aaa」から「example.com/bbb」に変更した際に、旧URLから新URLへこの301を設定しておくと旧URLへアクセスがあっても自動的に新URLへ転送を行なってくれます。301設定を行なっているとSEO(Search Engine Optimization)の評価も引き継ぐ事が出来る為、サイト移転を行なった際は301設定を行う事をおすすめします。

304 Not Modified

304 Not Modifiedとは前回Webサイトを訪れた時からページの内容が未更新なことを表すステータスコードです。

サイトに初めてアクセスを行なった時にブラウザはキャッシュとしてWebサイトの情報を保存します。その後再度同じWebサイトにアクセスを行う場合はそのキャッシュデータを基にページを表示しますが、その際に前回アクセスした時からサイトの更新がされていない場合はキャッシュデータからWebサイトを表示し、ステータスコード304を返します。その為サーバーからのコンテンツダウンロードが不要となり、より高速にWebページを表示出来ます。

308 Permanent Redirect

308 Permanent Redirectとは301 Moved Permanentlyとほぼ同じでリクエストされたリソースのURLが恒久的に変更されたことを表します。

301との違いはHTTPメソッドをPOSTからGETに変えられないという事があります。古くから存在する301ではHTTPメソッドの変更が可能で不正にPOSTからGETに変更されてしまうリスクがありました。対して新しく出来た308ではHTTPメソッドの変更が出来ない為、301と同じく恒久的なURL変更をあらわしつつも301よりも厳格なステータスコードといえます。ただし旧バージョンのブラウザなど、一部未対応のブラウザも存在するため注意が必要です。

ステータスコード3xx一覧表

次が3xxステータスコードの一覧です。他のコードと比べてコード数も少なく、比較的覚えやすいコードですが内容が類似したコードも存在するため注意が必要です。

コード番号意味説明
300Multiple Choicesリクエストしたリソースが複数存在し、ユーザやユーザーエージェントに選択肢を提示するときに返されます。
301Moved PermanentlyリクエストされたリソースのURLが恒久的に変更されたことを表します。
302FoundリクエストされたリソースのURLが一時的に変更されたことを表します。
303See Otherリクエストされたリソースが別のURLに存在する場合に返されます。
304Not Modifiedリクエストしたリソースが更新されていない場合に返されます。
305Use Proxyプロキシを使用してリクエストを行わなければならない場合に返されます。
306Unused旧バージョンのHTTP仕様で使用されていましたが現在は使用されず、コードは予約されています。
307Temporary Redirect302とほぼ同じでリクエストされたリソースのURLが一時的に変更された事を表します。302との違いは使用するHTTPメソッドを変更してはならない点です。
308Permanent Redirect301とほぼ同じでリクエストされたリソースのURLが恒久的に変更されたことを表します。301との違いは使用するHTTPメソッドを変更してはならない点です。

まとめ

今回はHTTPステータスコード300番台の意味について解説をしました。

ステータスコード3xxはリダイレクト(転送)が行われた事を表します。

ステータスコード3xxはエラーコードと違い、画面上に表示がされない為あまり目にする機会がありません。ですが普段よく目にするリダイレクト(転送)時には裏で3xxのステータスコードが返されている為、一度ブラウザの開発者モードなどで確認をしてみましょう。

主要なステータスコード3xxとして次を学びました。

  • 301 Moved Permanentlyはサイト移転時に恒久的な移転を表す事
  • 304 Not Modifiedは前回訪問した時からサイトの更新がなく、キャッシュから表示されている事
  • 308 Permanent RedirectはHTTPメソッドの変更が行えない、より厳格な恒久的URL変更を表す事

SEO(Search Engine Optimization)とはGoogleなどで検索をした時に検索上位に表示されるようにサイトを改善することです。

SEOのメリットとして検索流入数増加による売り上げの上昇や、検索上位に表示される=Googleがそのサイトを信用している証となりサイトの評価にも繋がります。検索上位に表示される為には検索エンジンがインデックスするURLはユーザーが閲覧できることが大前提となります。その為ステータスコードによるサイトの状況把握を行い、サイト移転事などは301設定を行う事でSEOの評価を引き継ぐようにしましょう。

エンベーダー編集部

エンベーダーは、ITスクールRareTECHのインフラ学習教材として誕生しました。 「遊びながらインフラエンジニアへ」をコンセプトに、インフラへの学習ハードルを下げるツールとして運営されています。

RareTECH 無料体験授業開催中! オンラインにて実施中! Top10%のエンジニアになる秘訣を伝授します! RareTECH講師への質疑応答可

関連記事