「Hypertext Transfer Protocol」の版間の差分
提供: セキュリティ
(ページの作成:「<!-- vim: filetype=mediawiki --> Hypertext_Transfer_Protocol(HTTP)とは、Webサーバとクライアント(ブラウザ)...」) |
細 |
||
行3: | 行3: | ||
--> | --> | ||
− | [[Hypertext_Transfer_Protocol]]([[Hypertext_Transfer_Protocol|HTTP]])とは、[[Webサーバ]]とクライアント([[ブラウザ]])が通信するときに使う[[通信プロトコル]]です。[[HTML]]文書や文書に関連付けられた画像、音声、動画などを含めてやり取りできます。 | + | [[Hypertext_Transfer_Protocol]]([[Hypertext_Transfer_Protocol|HTTP]])とは、[[Webサーバ]]とクライアント([[ブラウザ]])が通信するときに使う[[通信プロトコル]]です。[[HyperText Markup Language|HTML]]文書や文書に関連付けられた画像、音声、動画などを含めてやり取りできます。 |
読み方 | 読み方 | ||
行15: | 行15: | ||
== 概要 == | == 概要 == | ||
− | [[HTML]] や [[XML]] で記述された[[ハイパーテキスト]]の転送を主な目的としています。テキスト以外に、バイナリ形式のデータも扱えます。 | + | [[HyperText Markup Language|HTML]] や [[XML]] で記述された[[ハイパーテキスト]]の転送を主な目的としています。テキスト以外に、バイナリ形式のデータも扱えます。 |
トランスポートプロトコルとして、[[TCP]]を利用します。 | トランスポートプロトコルとして、[[TCP]]を利用します。 | ||
行97: | 行97: | ||
| o | | o | ||
|} | |} | ||
+ | |||
+ | == HTTPのリクエストとレスポンス == | ||
+ | |||
+ | * [[HTTPリクエスト]] | ||
+ | : [[ウェブブラウザ]](Webクライアント) などから[[Webサーバー]]へのリクエストをいいます。 | ||
+ | ** [[HTTPリクエストヘッダー]] | ||
+ | * [[HTTPレスポンス]] | ||
+ | : [[Webサーバ]]から[[ウェブブラウザ]](Webクライアント)などへのレスポンスです。 | ||
+ | ** [[HTTPレスポンスヘッダー]] | ||
+ | ** [[HTTPステータスコード]] | ||
+ | * [[HTTP cookie]] | ||
== HTTPヘッダフィールド == | == HTTPヘッダフィールド == | ||
行109: | 行120: | ||
=== リクエストヘッダ === | === リクエストヘッダ === | ||
+ | |||
+ | * [[HTTPリクエストヘッダー]] | ||
=== レスポンスヘッダ === | === レスポンスヘッダ === | ||
+ | |||
+ | * [[HTTPレスポンスヘッダー]] | ||
== セキュリティ == | == セキュリティ == | ||
+ | |||
+ | === 脆弱性対策 === | ||
+ | |||
+ | * [[有効なセキュリティに関するHTTPヘッダ]] | ||
=== 認証 === | === 認証 === | ||
行137: | 行156: | ||
* [[Apache_HTTP_Server]] | * [[Apache_HTTP_Server]] | ||
* [[HTTPS]] | * [[HTTPS]] | ||
− | * [[Cookie]] | + | * [[HTTP Cookie]] |
* [[Tranport_Layer_Security]] | * [[Tranport_Layer_Security]] | ||
− | * [[HyperText_Markup_Language]] | + | * [[HyperText_Markup_Language]] ([[HyperText Markup Language|HTML]]) |
2013年5月11日 (土) 12:25時点における版
Hypertext_Transfer_Protocol(HTTP)とは、Webサーバとクライアント(ブラウザ)が通信するときに使う通信プロトコルです。HTML文書や文書に関連付けられた画像、音声、動画などを含めてやり取りできます。
読み方
はいぱーてきすと とらんすふぁー ぷろとこる
HTTP えいちてぃーてぃーぴー
目次
概要
HTML や XML で記述されたハイパーテキストの転送を主な目的としています。テキスト以外に、バイナリ形式のデータも扱えます。
トランスポートプロトコルとして、TCPを利用します。 HTTPは、サーバ/クライアントモデルで、リクエストレスポンス型のプロトコルです。
World_Wide_Web におけるWebページのリソースは、Uniform_Resource_Identifierによって指定します。 HTTP を使用してリソースにアクセスする場合には、 http: を先頭につけた URL を使用します。
http://www.example.co.jp/index.html
HTTP の 規格には、以下のバージョンがあります。
主な仕様を以下に示します。
HTTPプロトコル
HTTP/1.0 で index.html を取得する場合には、以下のリクエストを送信します。
GET /index.html HTTP/1.0
HTTP/1.1 で index.html を取得する場合には、以下のリクエストを送信します。
GET /index.html HTTP/1.1 Host: foo.com
メソッド
メソッド | HTTP/0.9 | HTTP/1.0 | HTTP/1.1 |
---|---|---|---|
GET | o | o | o |
POST | o | o | |
PUT | △ | o | |
HEAD | o | o | |
DELETE | △ | o | |
OPTION | o | ||
TRACE | o | ||
CONNECT | o |
HTTPのリクエストとレスポンス
HTTPヘッダフィールド
ヘッダの各要素は、フィールド名と内容で構成されます。
フィールド名: 内容
例えば、Host ヘッダは、以下のように表します。
Host: foo.com
リクエストヘッダ
レスポンスヘッダ
セキュリティ
脆弱性対策
認証
Basic認証
HTTP/1.1では、Basic認証が定義されています。 単純な認証機能を提供します。
Digest認証
Digest認証は、Basic認証を発展した認証機能を提供します。