検索
連載

ホームページはWebと同じ?HTTP!?〜これで入門書が読める!超初心者のためのインターネットの仕組み〜インターネットのモヤモヤを解消する(7)(2/2 ページ)

ブラウザって裏でどんなことをしているか知ってますか? 普段よく使うWebのやりとりは、HTTPが使われています。そのやりとりは一方通行でこんなに単純です

Share
Tweet
LINE
Hatena
前のページへ |       

よく使われるブラウザ

正男 「ちなみにブラウザはどのWebサイトもきちんと見られるようになっていますが、2ちゃんねるやニコニコ動画などの専用ブラウザは、そのWebサイトが見やすいように特別に調整されているから『専用』なんですね」

芽衣子 「そっか、普通に見るより見やすいから専用ブラウザを使ってるんだけど、その普通がただのブラウザってことね」

ブラウザ名 使用可能なOS
Internet Explorer(リンク Windows
Firefox(リンク・参照記事:プラグインで、Webブラウザをもっといろいろできる子に Windows/Mac/Linux
Safari(リンク Windows/Mac
Chrome(リンク・参照記事:GoogleChromeの隠し機能を使いこなしていますか? Windows/Mac
Opera(リンク Windows/Mac/Linux

 ちょっとだけ芽衣子さんは賢くなった気がしました。

HTTPの原理はとっても簡単

正男 「さて、ブラウザのことも分かったと思いますので、HTTPの仕組みについて説明します」

芽衣子 「そうですか、まだこれからですか……」

 若干飽き気味の芽衣子さんですが、説明は続いていきます。

正男 「HTTPのポートは80です」

芽衣子 「前はWebだっていってた記憶があるけど、WebとHTTPって一緒なのよね」

成沢 「そうだ」

正男 「HTTPの仕組みは簡単です。ブラウザからhttpサーバに接続して、命令を送るとそれに対応したデータが送られてきます」

芽衣子 「ふーん」

正男 「例えばhttp://bogus.jp/index.htmlを見たいときには、アドレスバーにhttp://bogus.jp/index.htmlと入力しますが、その際にブラウザからWebサーバに送られる命令は、

GET /index.html HTTP/1.1

Host: bogus.jp

 みたいな感じです。それに対してサーバがindex.htmlのデータを送るというわけです」

芽衣子 「ブラウザって裏ではこんなことやってんのね」

正男 「送られてくるデータの中身はブラウザの『ソース』を見れば分かります」

ソースを表示

正男 「また、掲示板などに書き込むときなど、こちらからデータを送信したいようなときには、

POST /board.php HTTP/1.1

 というPOST命令が使われることもあります。大体、このGETとPOSTの2つの命令だけでWebの仕組みはできているのですよ」

芽衣子 「へえ、ややこしいことも実は単純な仕組みでできてたりするのね」

実際にHTTPのやりとりを行ってみる

正男 「取りあえず、生のデータということで、telnetを使って見てみましょう」

 とコマンドプロンプト※を立ち上げて。説明を続けます。

正男 「プロンプトから、

C:\>telnet www.atmarkit.co.jp 80

と入力すると、www.atmarkit.co.jpのWebサーバに接続します。次に、

GET / HTTP/1.1[Enter]
Host: www.google.co.jp[Enter]
[Enter]
[Enter]

 と入力すると(Windowsでは画面に表示されません)、データが送られてきます」

芽衣子 「うわ、また黒いハッキングツールですね」

成沢 「ただのコマンドラインに何をうろたえとるか」

※コマンドプロンプトの詳細:いまさら聞けないネットワーク管理コマンド

正男 「送られてくるデータは基本的にソースの内容と同じですが、最初の方が少し違います」

HTTP/1.1
200 OK
Date: Thu, 19 Mar 2009 07:34:24 GMT
Server: Apache
Last-Modified: Tue, 06 Jan 2009 08:09:11 GMT
ETag: "17a00c6-c53-496311a7"
Accept-Ranges: bytes
Content-Length: 3155
Connection: close
Content-Type: text/html

 のようなものがあると思いますが、これがレスポンスヘッダといって、ブラウザには表示されない情報になっています。このデータを見て、ブラウザは送られてきたデータを処理していきます」

 そういったところで正男さんの携帯が鳴り響きます。

正男 「……、は、はい。……、では、今日はここまで」

正男 「次回はもう少し深くHTTPの内容について見ていくことにしましょう」

芽衣子 「もっとゆっくりのんびり教えてくださいよ」

成沢 「本社が大変な状況なのに、よくそんな悠長なことをいってられるものだ!」

 成沢さんが一喝します。が芽衣子さんは内容にびっくりです。

芽衣子 「本社大変なんですか??」

正男 「うわ、それはいっちゃダメですよ。秘密ですよ」

成沢 「ああっ、いまのナシ。聞かなかったことにしてください」

芽衣子 「いいわ、黙っといてあげる」

 ニヤリと笑う芽衣子さんでした。


「ブラウザって裏ではこんなことやってんのね」をおさらいしよう

今回のおさらい

基本的にブラウザを使って見るページはHTTPと考えてもらえばいいと思います

 ブラウザを使えばftpなどほかのサービスも使うことはできますが、ややこしくなるのでここでは触れないことにします。

「そんなのあるの? あれってパソコンに備え付けじゃないの?」

 世間一般にはOSとブラウザはセット、もしくはブラウザがOSだと思われているようです。

GET
/ HTTP/1.1
Host: bogus.jp

 HTTP 1.1では Host:が必須です。

GETとPOST

 GETとPOST以外にもHEADやTRACEなどの命令もありますが、普段使うことはありません。

 GETには送信できるデータの長さに制限がありますが、POSTには基本的にないのが大きな違いです。


「インターネットのモヤモヤを解消する」バックナンバー

Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る