はじめに
みけた@プログラマー転職です。
元公務員、無職の31歳です!
転職に向けて、まずWebの基礎について理解したいと思い、下記の書籍を読んでいくことにしました。
間違いがあるかもしれませんが、この書籍を読まれる初学者の方にとって参考になれば幸いです。
イラスト図解式 この一冊で全部わかるWeb技術の基本
小林 恭平 (著), 坂本 陽 (著), 佐々木 拓郎 (監修)
※ Amazonで、Kindle版が1000円弱で買えます
Chapter 2 - Webとネットワーク
○ Webの仕組みついてのおさらい
以上の図のとおり、自宅のPCのChromeやIEなどにWebページが表示されるのは、
ChromeなどのWebブラウザからWebサーバーに対して「〜ページを表示して!」というリクエストが
送られ、それを受けたWebサーバーが該当のファイルを送り返しているからである。
そのやり取りを行うにあたって使われているのが、HTTP(HyperText Transfer Protocol)
という規格や、より安全なHTTPSという規格である。
「〜ページを表示して!」というリクエストの行き先は、統一資源位置指定子!!!
(URLのことです。。。)によって特定され、IPアドレスという番号の羅列に変換されて、
初めてPCが分かる行き先になる。
Webサーバーから送られるファイルは、サーバー内のサーバーサイド言語(Ruby・PHP・Python)
などによって、その都度生成されることがあり、これを「動的ページ」という。
ちなみに、FacebookやInstagramがユーザーごとにカスタマイズしたページを表示できるのは、
Webブラウザから受け取った情報を元にして、動的にWebページを生成しているからである。
○ DNSについて
先ほどの説明だと、単純にWebページの表示は自宅のPCとWebサーバーのみで完結しているように
思われる。だが、実際には、IPアドレスを見つける為に、その間にはDNSサーバーが介在している。
単純に自宅のPCがダイレクトにWebサーバーに行けるわけではなく、IPアドレス取得のため、
DNSサーバーへのスタンプラリーを終えなければいけない。
これがそのスタンプラリーの様子だ。
会社の稟議のように、DNSルートサーバーを始めとして、多くのDNSサーバーを媒介しなければならない。
ところで、DNSとはDomain Network Systemの略称である。
要は、場所を特定するためのネットワークシステムということである。
文字どおり、場所特定のためのスーパーコンピュータがあるわけではなく、
複数のコンピュータが繋がった形で、それぞれが協力してIPアドレスを特定しているのである。
ドメイン名のしくみ
一般社団法人日本ネットワークインフォメーションセンターHP
○ TCP/IPについて
TCP/IPとは、インターネット上のプロトコルの総称を指す。
例えば、以下のようなプロトコルがある。
- HTTP(HTMLのプロトコル)
- FTP(Fileのプロトコル)
- SMTP(メール送信のプロトコル)
- POP(メール受信のプロトコル)
ちなみに、TCP/IPはいくつものレイヤー(層)に分かれている。
HTTPやFTPはアプリケーションというレイヤーに属している。
TCP/IPとは?初心者がTCP/IPを理解するための完全ガイド
ブログ 「LIFESTYLE LAB(ライフスタイルラボ)」
[インターネット通信の流れ]
Qiita記事 @naoki_mochizuki