WEBサービスやホームページを持っていたりするとサーバの移行などでサーバの移行中は別のサイトを表示したい時があります。
そんな時にはリダイレクトを使うことがあります。
今回はリダイレクトについて簡単に説明します。
概要
簡単に説明すると、サーバへHTTP接続が行われると、サーバは別のURLを見るように接続元へ応答します。
![](https://dennie.tokyo/it/wp-content/uploads/2021/12/リダイレクト概要-ページ1.drawio.png)
リダイレクト指示
具体的な説明をします。通常、HTTPでリクエストを送るとサーバからレスポンスが返ってきます。正常の場合、サーバはステータスコードを200で返すことになっています。リダイレクトの場合、300番台(301や302、307など)を返することになっています。
また、サーバーはリダイレクト先を送信元へ教えてあげる必要があります。サーバは Location という名前のレスポンスヘッダーにリダイレクト先のURLを送付する決まりになっています。
送信元は300番台はリダイレクトだと判断します。そして Location ヘッダーに設定されたURLを使用してHTTPリクエストを送信します。
![](https://dennie.tokyo/it/wp-content/uploads/2021/12/リダイレクト詳細-ページ1.drawio.png)
最後に
概要だけでは分かったようでよく分からないので実際に動作を確認するとより理解が深まります。
リダイレクトの方法は、サーバ側の構成によって方法が異なりますが、レスポンスのステータスコードを300番台にすること、Location ヘッダーにリダイレクト先URLを設置することは決まっているので変わりありません。リダイレクトを行う際はこのことを意識すれば大丈夫です。