生のヘッダってなに?-WordPressで始めるWebの世界

Pocket

WordPressのコアファイルを見ていたらheader()という関数が出てきました。PHPの説明を読むと

header生の HTTP ヘッダを送信する

http://php.net/manual/ja/function.header.php

と説明されていましたが、そもそも生のHTTPヘッダって何なんでしょう。

「生の」「HTTP」「ヘッダ」それぞれ1つずつ見ていきます。

HTTPとは、ヘッダとは

よくURLで見るhttpですが、そもそもこれは「Hyper Text Transfer Protocol」の略で、

ハイパーテキスト(他の文書へのリンクを埋め込んだテキストのこと)を転送するためのルールっていう意味だそうです。

それで、このHTTPというルールに基づいてWebクライアント(ブラウザ)とWebサーバは互いにリクエスト(HTTPリクエスト)をしたりレスポンス(HTTPレスポンス)を返したりします。

HTTPリクエストもHTTPレスポンスもある書式に従って書かれています。今回出てきたヘッダはブラウザ情報やコンテンツの種類、リダイレクト先といった細々とした情報のことみたいです。

  • HTTPリクエストとHTTPレスポンスの中身

HTTPリクエストは「HTTPリクエスト行」「HTTPリクエストヘッダ」「データ本体」

HTTPレスポンスは「レスポンス状態行」「HTTPレスポンスヘッダ」「データ本体」

という感じで3部構成になっています。

このうちの2つ目が今回出てきた「ヘッダ」のことですね。

生の、とは?

「生の」がどういう意味かは分かりませんでした。。。

まぁよく分かんないんですが「任意のヘッダをそのまま送信してくれる」って考えておけば間違いないのかな。

サンプル

例えばこんな感じファイルを2つ用意して、main.phpをWebサーバに要求すると、Webクライアントに「Location: redirect.php」っていう内容のヘッダが送信されるので、このヘッダに従ってWebクライアントはredirect.phpを要求した結果、ブラウザで「Hello World!」が表示されるみたいです。

Locationはヘッダの一つで、ブラウザが次に表示すべきURLが記述されます。なので、結果的にredirect.phpがWebサーバに要求されることになるわけですね。

main.php

redirect.php

 

 

 

WordPressのコアファイルでPHP事始め3-WordPressで始めるWebの世界

Pocket

コメントを残す

メールアドレスが公開されることはありません。