Webサーバーとリクエスト

Web全般

2021.5.14

Webサーバーとのやりとりについて、改めてまとめてみます。

Webサーバーのレスポンスは何をしているか

クライアントからの指示を受け取り、その内容に応じた情報を送り返す処理をしています。

具体的には、

クライアントからのリクエストを解釈し、サーバー上に用意された該当ファイルを返す処理です。

主なWebサーバー

Apache

Nginx

HTTPとは

HyperText Transfer Protocol(ハイパーテキスト・トランスファー・プロトコル)の略で、通信プロトコル(通信するときのルール)の1つです。

ホームページのファイルを受け渡しするときに使います。

HTMLやXMLなどのハイパーテキストだけでなく、静止画、音声、動画、JavaScriptプログラム、PDF、各種ドキュメントファイルなど転送することができます。

やり取りされる内容を暗号化する通信プロトコルがHTTPSです。

HTTPリクエストの種類

GET

  • URIで指定した情報を要求
  • URIがファイル名のときはそのファイルの中身を、プログラム名のときはそのプログラムの出力を返す
  • URIにデータをつけて送る(クエリ文字列はブラウザのURL欄に表示される)
  • stringのみ
  • 何か情報を検索したり取得する等、基本的に読み取り専用な機能に対して使うべき

POST

  • HTTPリクエストのメッセージボディにパラメータ(情報)を付けて送る
  • HTTPヘッダのみを返す
  • 新しくデータを作成するときによく使用する
  • ボディは解析すれば確認できるのでセキュリティ的に安全というわけではない

PUT

  • すでに存在しているデータを上書きして更新

PATCH

  • すでに存在しているデータを上書きして一部更新

DELETE

  • すでに存在しているデータを削除

HTTPレスポンスの種類

次にレスポンスの主なものをまとめます。

200

200

OKリクエストが成功しレスポンスが返されます。正常処理を表します。

300

301

Moved Parmanently指定したリソースは移動したので、新しい場所から取得して下さい。サイトの引越しをしたときは、この値を設定します。

302

Moved Temporarily指定したリソースは一時的に移動したので、新しい場所から取得して下さい。一時的にサイトの場所を変える時にこの値を設定します。

304

Not Modified指定したファイルは変更されていないのでブラウザのキャッシュのデータを表示してください。

400

401

Unauthorixed認証に失敗しました。

403

Forbiddenアクセス権がありません。

404

Not Foundリクエストしたアドレスのページがありません。

500

500

Internal Server Errorスクリプトなどで内部のエラーが発生しています。

502

Bad Gatewayゲートウェイが無効なレスポンスを受け取りました。

503

Service Unavailableサービスが提供できません。Webサーバーに負荷がかかりすぎたときなどに表示されます。

まとめ

簡単に、備忘録としてまとめてみました。

Megumi Tanimoto

Editor

フロントエンドエンジニア1年目。
エンジニアライフ、技術的なアウトプットを中心に発信します。