World Wide Webは、インターネットで提供されるハイパーテキストシステムである。
これより下ではWorld Wide WebをW3と呼ぶこととする。
概要
W3のウェブページの記述にはHTMLやXHTMLなどのハイパーテキストのマークアップ言語が使用される。
W3で使われるハイパーテキストというのは、そもそも、ドキュメント内に別のドキュメントのURL(ハイパーリンク)を埋め込むことで、インターネット上の文書同士を相互に参照可能にするシステムである。
閲覧者は表示している文書中で、ハイパーリンクがつけられた箇所をクリックしたりしてイベントを発火することでリンク先の文書を表示(ナビゲート)させることができる。
情報を提供する側はウェブサーバーを公開し、利用者はウェブブラウザのようなサーバーの情報を閲覧するシステムを利用してアクセスする。
このアクセスするためのソフトウェアをウェブクライアント、またはWWWクライアントと呼ぶ。
ウェブクライアントのうちで、利用者による閲覧を目的としたものを特にウェブブラウザと呼んでいるのだが、そうでないものにはcurlやwget、requests
(Python) などがある。
1990年代のマルチメディアブームで最も普及したシステムの1つだが、今でも仕様が更新され続けている。
今ではハイパーテキストだけでなくバイナリを渡すようになっていたり、昔の枠組みを超えるような仕様が出てきたりしていて、アプリケーションの基盤をウェブ化することも行われている。
インターネットとW3は非常に混同されやすい。詳しくはインターネットとWebの違いを参照。
名称について
World Wide Webの名称は、それぞれの単語を次のように展開できる。
World | 世界 | 世界規模の |
Wide | 幅の大きな、広い | |
Web | クモの巣 |
Webという単語はW3を表すのが現在では一般的だが、もともとはクモの巣を意味する単語である。これは、ドキュメント同士のつながりがクモの巣を意味するからである。
World Wide Webは、その頭文字を取って WWW と呼ばれる。
URLでのhttps://www.example.com
のwww
は、World Wide Webのことを指している。
最後の部分を取って、Webと呼ばれることも多い。日本語でもウェブと呼ばれる。
派生用語
- ウェブサイト (Website)
- ウェブページ (Webpage)
- ウェブブラウザ (Web browser)
- ウェブサーバー (Web server)
- ウェブアプリ (Web app)
- Web API
- WebSocket
- ウェブフック (Webhook)
- ウェブ検索 (Web search)
- ウェブスクレイピング
- ウェブホスティング
- ウェブコンテンツ
- WebM
- WebP
- Web 2.0
- Web3
- ウェブビーコン (Web beacon)
- ウェブカメラ
- ウェブ会議
- ウェブニュース(ネットニュースとも)
歴史
発端:情報共有の必要性(1989年)
World Wide Webは、1989年にスイス・ジュネーブにあるCERN(欧州原子核研究機構)にて、ティム・バーナーズ=リー(Tim Berners-Lee)によって考案された。
当時のCERNでは、世界中の研究者が共同で研究を進める中で、文書や研究結果を効率的に共有する仕組みが求められていた。
初期の構成技術(1990年)
ティム・バーナーズ=リーは、W3を構築するために以下の基本技術を提案・実装した:
- HTML(HyperText Markup Language):文書構造を記述するためのマークアップ言語
- HTTP(HyperText Transfer Protocol):文書を転送するための通信プロトコル
- URL(Uniform Resource Locator):リソースの位置を示すアドレス指定方式
さらに、世界初のWebサーバーおよびWebブラウザであるWorldWideWeb(後にNexusと改名)も開発された。
公開と普及(1991年〜)
1991年8月6日、CERNはW3の技術を世界に公開し、全世界で誰でも自由に使用できるようにした。
これにより、Webは急速に普及を始め、1993年には米国のNCSAによってGUIベースのWebブラウザ「Mosaic」が登場し、Webの一般利用が爆発的に拡大していった。
W3C(World Wide Web Consortium)の設立(1994年)
1994年、ティム・バーナーズ=リーはWebの標準化と発展を目的として、W3C(World Wide Web Consortium) を設立した。
W3CはMIT(マサチューセッツ工科大学)を拠点とし、HTML、CSS、XML、SVGなど、Webの中核技術の標準化を進めている。
現代への展開
Webは静的なハイパーテキストの枠を超えて、JavaScriptによる動的なコンテンツ表示や、Webアプリケーション、WebSocket、HTTP/2・HTTP/3など、通信技術の進化とともに進化を続けている。
また、近年ではWeb3という言葉に代表されるように、ブロックチェーン技術との融合や、分散型Webの構想も登場しており、Webの未来はさらに広がりを見せている。
技術
仕組み
W3は、クライアントサーバーモデルに基づくシステムである。
W3上のドキュメントなどのリソースにアクセスするには、ブラウザにURIを入力するかリンクをたどるなどして、ブラウザに対象のリソースの場所を知らせる。そうすると、リソースに到達するための処理が始まる。
ここでは、http://www.example.com/home/
を用いて説明する。
まず、URIのサーバー名を表す部分 (www.example.com
) がDNSを通してIPアドレスに変換される。なお、IPアドレスが直接URIで指定されている場合はこの処理は行われない。
次に、URIのスキーム (http://
)に基づいて、IPアドレスに対応するウェブサーバーに対して接続を試みる。ここには主にHTMLが使われる。
要求を受け取ったウェブサーバーは、静的なリソースの場合は即座に対象のリソース(/home/
)を要求元へ返す(返答)。
INFO
ちなみに、皆さんがよく見る 404 NOT FOUND はウェブサーバーが返している。
返答を受け取ったウェブブラウザは、HTMLファイルやCSSに従いページをレンダリングしたり、画像などのメディアやリンクをはめ込むんだりする作業を行う。
これらを経て、最終的に画面上のページが生み出される。
なお、Web APIの場合はこれらとは大きく違った処理が行われる。 詳しくはWeb APIを参照。
標準規格
W3を構成する様々な概念は標準規格化されているが、その中でハイパーテキストを実現する最も基礎的な概念として以下の3つを挙げる。
名称 | 略称 | 内容 | 標準化団体 |
---|---|---|---|
Uniform Resource Locator | URL | リソース位置識別子 | WHATWG |
Hypertext Transfer Protocol | HTTP | 通信プロトコル | IETF |
Hypertext Markup Language | HTML | ハイパーテキストの構造 | WHATWG |
このほか、プログラムからのドキュメント操作を定義するDOM Standard、HTTPを抽象化したFetch Standardなど、様々な仕様が定義および整備されている。 |
また、Web APIの標準規格にはRest APIなどもある。