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

2023.08.31

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

こちらの記事では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の評価を引き継ぐようにしましょう。

【番外編】USBも知らなかった私が独学でプログラミングを勉強してGAFAに入社するまでの話

IT未経験者必見 USBも知らなかった私が独学でプログラミングを勉強してGAFAに入社するまでの話

プログラミング塾に半年通えば、一人前になれると思っているあなた。それ、勘違いですよ。「なぜ間違いなの?」「正しい勉強法とは何なの?」ITを学び始める全ての人に知って欲しい。そう思って書きました。是非読んでみてください。

「フリーランスエンジニア」

近年やっと世間に浸透した言葉だ。ひと昔まえ、終身雇用は当たり前で、大企業に就職することは一種のステータスだった。しかし、そんな時代も終わり「優秀な人材は転職する」ことが当たり前の時代となる。フリーランスエンジニアに高価値が付く現在、ネットを見ると「未経験でも年収400万以上」などと書いてある。これに釣られて、多くの人がフリーランスになろうとITの世界に入ってきている。私もその中の1人だ。数年前、USBも知らない状態からITの世界に没入し、そこから約2年間、毎日勉学を行なった。他人の何十倍も努力した。そして、企業研修やIT塾で数多くの受講生の指導経験も得た。そこで私は、伸びるエンジニアとそうでないエンジニアをたくさん見てきた。そして、稼げるエンジニア、稼げないエンジニアを見てきた。

「成功する人とそうでない人の違いは何か?」

私が出した答えは、「量産型エンジニアか否か」である。今のエンジニア市場には、量産型エンジニアが溢れている!!ここでの量産型エンジニアの定義は以下の通りである。

比較的簡単に学習可能なWebフレームワーク(WordPress, Rails)やPython等の知識はあるが、ITの基本概念を理解していないため、単調な作業しかこなすことができないエンジニアのこと。

多くの人がフリーランスエンジニアを目指す時代に中途半端な知識や技術力でこの世界に飛び込むと返って過酷な労働条件で働くことになる。そこで、エンジニアを目指すあなたがどう学習していくべきかを私の経験を交えて書こうと思った。続きはこちらから、、、、

note記事3000いいね超えの殿堂記事 今すぐ読む

エンベーダー編集部

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

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

関連記事