Webサーバー(Apache等)を構築した後、ブラウザからアクセスしてページが表示されると感動しますよね![]()
でも、「ブラウザとサーバーの間で実際にどんなやり取りが行われているのか」はブラックボックスになりがちです。
今回は、Telnet(テルネット) というツールを使い、WebブラウザとWebサーバー間でどのような通信が行われているのか見るハンズオンを試してみました!
ハンズオンの手順
1. telnetクライアントをインストール
サーバー(EC2など)にログインし、telnetコマンドをインストールします。
sudo dnf -y install telnet
2. ポート80番(HTTP)に接続する
Webサーバーが動いているローカルホストの80番ポートへ接続します。
telnet localhost 80
画面に Connected to localhost. と表示されれば、WebサーバーとのTCP接続が成功です!
3. 手動でHTTPリクエストを送信する
画面が繋がったら、以下の2行のコマンドを素早く入力し、最後に Enterキーを2回 押します。
GET / HTTP/1.1
Host: localhost
すると、サーバーから HTTP/1.1 200 OK という返答とともに、以下のような生のHTMLテキストがドカンと返ってきます!
HTTP/1.1 200 OK
Date: Tue, 08 Sep 2026 06:00:00 GMT
Server: Apache/2.4.58
...
<!DOCTYPE html>
<html>
<body>
<h1>Test Page</h1>
</body>
</html>
このハンズオンで学べること・気づき
- Web通信の素顔: 「Web通信って、実は単純なテキストのやり取りなんだ!」と体感できる。
- 今後の開発に活きる視点: 将来的にAPI開発をしたり、Chromeの開発者ツールでデバッグしたりする際に、「今どんなヘッダーが送られているか」が立体的にイメージできるようになる。
Webサーバー構築の動作確認として、ぜひ試してみてください!
参考書籍
この記事のハンズオンは、以下の書籍を参考に、実践・学習した内容をまとめたものです。
- 『AMAZON WEB SERVICES 基礎からのネットワーク&サーバー構築改訂4版』