HTTP
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*HTTP とは [#wb7410dc]
**名称 [#y701ef18]
-Hyper Text Transfer Protocol
**概要 [#q77ad573]
-アプリケーション層([[TCP/IPモデル]])の[[通信プロトコル]]
-処理単位で通信を切断する[[ステートレス]]なプロトコル。
-[[ウェルノンポート番号]](TCP標準ポート番号):80
*HTTPのバージョン [#j6924f28]
**HTTP1.0 [#x58119d1]
-ヘッダ情報の扱いを追加。[[Cookie]]の登場。
**HTTP1.1 [#k29ced97]
-RFC2616
-Keep-Alive、[[プロキシ]]を追加。
**HTTP/2 [#t3ab2d40]
-「[[HTTP/2]]」参照
**HTTP/3 [#k284f17c]
-「[[HTTP/3]]」参照
*HTTPメッセージ(リクエストメッセージ) [#xd2c07c0]
**メッセージの構成要素 [#pb159521]
-1行目:リクエストライン
--メソッド
--[[URI]]
--HTTPバージョン
---ブラウザが対応しているバージョン
-2行目以降:メッセージヘッダ(ヘッダフィールド)
-空白行
-メッセージボディ
**メソッド [#e16ea2cb]
-GET
--参照系
--サーバにデータの送信を要求する
--WebブラウザからデータをWebサーバに渡す方法
---URLの後ろにパラメタを付加する
---クエリストリング (URLパラメータ)
---送信可能なデータ:テキストのみ([[URLエンコード]])
---最大文字数:255文字
---環境変数:QUERY_STRING
-POST
--更新系
--サーバにデータを送信する
--WebブラウザからデータをWebサーバに渡す方法
---メッセージボディにデータをセットする
---送信可能なデータ:テキスト、バイナリ
-HEAD
--サーバにメッセージヘッダの送信を要求する(ボディ部は不...
-PUT
--サーバにファイルを送信する
-DELETE
--サーバにデータの消去を要求する
-CONNECT
--サーバにトンネルの確立を要求する
--プロキシサーバを使ったHTTPS通信で使われる
-OPTIONS
-TRACE
**ヘッダフィールド [#g709e084]
-ジェネラルヘッダ
-リクエストヘッダ
-レスポンスヘッダ
-エンティティヘッダ
***リクエストヘッダ [#a9181123]
-必須のヘッダ項目
--Host
---送信元ホスト名([[FQDN]])と[[ポート番号]]
-条件付きGET
--If-Modified-Since
--If-None-Match
-圧縮
--Accept-Encoding
***エンティティヘッダー [#i36afacb]
-Referer
--[[リファラ]]
--リンク元ページのURL
--これをチェックしてページ遷移が想定通りであるかを確認す...
--自サイトへの訪問者がどのリンクを辿って来たのかを確認で...
--自サイトがどのサイト(リンク)から参照されているのかを分...
-Content-Type
--[[MIME]]メディアタイプ
--例「application/xhtml+xml」
--「/」の左がタイプ、右がサブタイプ
--タイプ http://www.iana.org/cgi-bin/mediatypes.pl
--サブタイプ http://www.iana.org/assignments/media-types/
-言語タグ(Content-Language)
*HTTPメッセージ(レスポンスメッセージ) [#q89fece0]
**メッセージの構成要素 [#m8f09124]
-1行目:リクエストライン
--HTTPバージョン
--ステータスコード
--レスポンスフレーズ
-2行目以降:メッセージヘッダ(ヘッダフィールド)
-空白行
-メッセージボディ
**ステータスコード [#z9aca55e]
-番号帯
|コード |説明 |説明 |h
|1xx |Informational|処理中 |
|2xx |Success |成功 |
|3xx |Redirection |リダイレクト |
|4xx |Client Error |クライアントエラー |
|5xx |Server Error |サーバエラー |
-主なステータスコード
|コード |説明 |説明 |h
|100 |Continue |後続データを要求 |
|101 |Switching Protocols |プロトコルの変更を要求 |
|200 |OK |リクエストの処理が正常終了 |
|201 |Created |ファイルの作成が正常終了 |
|301 |Moved Permanently |ページが移動(恒久的) |
|302 |Found (Moved Temporarily) |ページが移動(一時的) |
|307 |Temporary Redirect |リダイレクト(一時的) |
|401 |Unauthorized |認証が必要 |
|403 |Forbidden |アクセスを禁止、リクエストを拒否 |
|404 |Not Found |ページが存在しない |
|451 |Unavailable For Legal Reasons |法的理由で利用できな...
|500 |Internal Server Error |サーバ内部でエラー発生 |
|503 |Service Unavailable |サービスが利用できない(一時的...
**ヘッダフィールド [#q7cd040f]
***レスポンスヘッダー [#ie2d793d]
-圧縮
--Conten5-Encoding
*HTTP認証 [#iec8de76]
-[[Basic認証]]
-[[Digest認証]]
*キャッシュの制御 [#i9239956]
-Pragma
-Expires
-Cache-Control
*持続的接続 [#g9103073]
-Keep-Aliveヘッダ
*HTTPの拡張仕様 [#r6d02e39]
-[[WebDAV]]
*関連サイト [#l5afa05a]
-Security headers quick reference - web.dev~
https://web.dev/security-headers/
-Deprecating the "X-" Prefix and Similar Constructs in Ap...
https://www.rfc-editor.org/rfc/rfc6648
*関連用語 [#v692e132]
-[[IANA]]が管理
-[[Cookie]]
-[[CGI]]
-[[hidden]]
-[[HTTPS]]
-[[HTTPヘッダインジェクション]]
-[[冪等性]]
-[[X-Forwarded-For]]
-[[OSI参照モデル]]
終了行:
*HTTP とは [#wb7410dc]
**名称 [#y701ef18]
-Hyper Text Transfer Protocol
**概要 [#q77ad573]
-アプリケーション層([[TCP/IPモデル]])の[[通信プロトコル]]
-処理単位で通信を切断する[[ステートレス]]なプロトコル。
-[[ウェルノンポート番号]](TCP標準ポート番号):80
*HTTPのバージョン [#j6924f28]
**HTTP1.0 [#x58119d1]
-ヘッダ情報の扱いを追加。[[Cookie]]の登場。
**HTTP1.1 [#k29ced97]
-RFC2616
-Keep-Alive、[[プロキシ]]を追加。
**HTTP/2 [#t3ab2d40]
-「[[HTTP/2]]」参照
**HTTP/3 [#k284f17c]
-「[[HTTP/3]]」参照
*HTTPメッセージ(リクエストメッセージ) [#xd2c07c0]
**メッセージの構成要素 [#pb159521]
-1行目:リクエストライン
--メソッド
--[[URI]]
--HTTPバージョン
---ブラウザが対応しているバージョン
-2行目以降:メッセージヘッダ(ヘッダフィールド)
-空白行
-メッセージボディ
**メソッド [#e16ea2cb]
-GET
--参照系
--サーバにデータの送信を要求する
--WebブラウザからデータをWebサーバに渡す方法
---URLの後ろにパラメタを付加する
---クエリストリング (URLパラメータ)
---送信可能なデータ:テキストのみ([[URLエンコード]])
---最大文字数:255文字
---環境変数:QUERY_STRING
-POST
--更新系
--サーバにデータを送信する
--WebブラウザからデータをWebサーバに渡す方法
---メッセージボディにデータをセットする
---送信可能なデータ:テキスト、バイナリ
-HEAD
--サーバにメッセージヘッダの送信を要求する(ボディ部は不...
-PUT
--サーバにファイルを送信する
-DELETE
--サーバにデータの消去を要求する
-CONNECT
--サーバにトンネルの確立を要求する
--プロキシサーバを使ったHTTPS通信で使われる
-OPTIONS
-TRACE
**ヘッダフィールド [#g709e084]
-ジェネラルヘッダ
-リクエストヘッダ
-レスポンスヘッダ
-エンティティヘッダ
***リクエストヘッダ [#a9181123]
-必須のヘッダ項目
--Host
---送信元ホスト名([[FQDN]])と[[ポート番号]]
-条件付きGET
--If-Modified-Since
--If-None-Match
-圧縮
--Accept-Encoding
***エンティティヘッダー [#i36afacb]
-Referer
--[[リファラ]]
--リンク元ページのURL
--これをチェックしてページ遷移が想定通りであるかを確認す...
--自サイトへの訪問者がどのリンクを辿って来たのかを確認で...
--自サイトがどのサイト(リンク)から参照されているのかを分...
-Content-Type
--[[MIME]]メディアタイプ
--例「application/xhtml+xml」
--「/」の左がタイプ、右がサブタイプ
--タイプ http://www.iana.org/cgi-bin/mediatypes.pl
--サブタイプ http://www.iana.org/assignments/media-types/
-言語タグ(Content-Language)
*HTTPメッセージ(レスポンスメッセージ) [#q89fece0]
**メッセージの構成要素 [#m8f09124]
-1行目:リクエストライン
--HTTPバージョン
--ステータスコード
--レスポンスフレーズ
-2行目以降:メッセージヘッダ(ヘッダフィールド)
-空白行
-メッセージボディ
**ステータスコード [#z9aca55e]
-番号帯
|コード |説明 |説明 |h
|1xx |Informational|処理中 |
|2xx |Success |成功 |
|3xx |Redirection |リダイレクト |
|4xx |Client Error |クライアントエラー |
|5xx |Server Error |サーバエラー |
-主なステータスコード
|コード |説明 |説明 |h
|100 |Continue |後続データを要求 |
|101 |Switching Protocols |プロトコルの変更を要求 |
|200 |OK |リクエストの処理が正常終了 |
|201 |Created |ファイルの作成が正常終了 |
|301 |Moved Permanently |ページが移動(恒久的) |
|302 |Found (Moved Temporarily) |ページが移動(一時的) |
|307 |Temporary Redirect |リダイレクト(一時的) |
|401 |Unauthorized |認証が必要 |
|403 |Forbidden |アクセスを禁止、リクエストを拒否 |
|404 |Not Found |ページが存在しない |
|451 |Unavailable For Legal Reasons |法的理由で利用できな...
|500 |Internal Server Error |サーバ内部でエラー発生 |
|503 |Service Unavailable |サービスが利用できない(一時的...
**ヘッダフィールド [#q7cd040f]
***レスポンスヘッダー [#ie2d793d]
-圧縮
--Conten5-Encoding
*HTTP認証 [#iec8de76]
-[[Basic認証]]
-[[Digest認証]]
*キャッシュの制御 [#i9239956]
-Pragma
-Expires
-Cache-Control
*持続的接続 [#g9103073]
-Keep-Aliveヘッダ
*HTTPの拡張仕様 [#r6d02e39]
-[[WebDAV]]
*関連サイト [#l5afa05a]
-Security headers quick reference - web.dev~
https://web.dev/security-headers/
-Deprecating the "X-" Prefix and Similar Constructs in Ap...
https://www.rfc-editor.org/rfc/rfc6648
*関連用語 [#v692e132]
-[[IANA]]が管理
-[[Cookie]]
-[[CGI]]
-[[hidden]]
-[[HTTPS]]
-[[HTTPヘッダインジェクション]]
-[[冪等性]]
-[[X-Forwarded-For]]
-[[OSI参照モデル]]
ページ名: