1 分

ティム・バーナーズ=リーのウェブ — URL・HTTP・HTML とそれが重要な理由

ティム・バーナーズ=リーがURL、HTTP、HTMLを組み合わせてワールド・ワイド・ウェブを作った仕組みと、なぜこれらのシンプルな考え方が現代のアプリやAPIでも重要であり続けるのかをわかりやすく解説します。

ティム・バーナーズ=リーのウェブ — URL・HTTP・HTML とそれが重要な理由

ワールド・ワイド・ウェブとは(そして違い)

ワールド・ワイド・ウェブ(以下「ウェブ」)は、リンクを使って情報を公開・アクセスする仕組みです。リンクをクリックして別のページに移動したり、検索結果から商品ページを開いたり、ほとんどのコンピュータやスマホで機能する共有リンクを渡したりできるシステムです。

ウェブは3つのシンプルな考えから成る

基礎として、ウェブは実用的な三位一体で動いています:

  • URL(Uniform Resource Locator):ウェブ上の何か(ページ、画像、ファイル、エンドポイント)の住所
  • HTTP(Hypertext Transfer Protocol):配達の会話— ブラウザが何かを要求し、サーバーがどう応答するかの規則。
  • HTML(HyperText Markup Language):ページの形式— コンテンツと、決定的には他のURLへのリンクを記述する構造化された方法。

プログラマーでなくても影響は明白です:リンクを貼る、ページを読み込む、どこかに移動するボタンを押すたびに、あなたはURL+HTTP+HTMLに依存しています。

ウェブとインターネット(同じではない)

“ウェブ”と“インターネット”はよく混同されますが別物です:

  • インターネットは基盤インフラ:接続されたコンピュータのグローバルネットワークです。
  • ウェブはその上で動くサービスの一つ:URLとHTTPでアクセスされ、通常HTMLで提示されるリンクされたリソースのコレクションです。

メール、オンラインゲーム、多くのチャットアプリはインターネットを使いますが、厳密には“ウェブ”とは異なります。

なぜこれが今でも重要か

シングルページアプリ、モバイルアプリ、APIなど現代の体験も、これらの基礎に大きく依存しています。内部の詳細を隠していても、リソースを識別するURLリクエストとレスポンスを交換するHTTP、そしてブラウザで見せるためにHTMLで初期化することは変わりません。

ティム・バーナーズ=リーが解決しようとした問題

ティム・バーナーズ=リーは“インターネットを発明しよう”としたわけではありません。1989年、CERNで働いていた彼は実用的な悩みに着目しました:重要な情報は存在するが、互換性のないシステムに散らばり、異なる形式で保存され、再発見が難しかったのです。

研究者やチーム、部署は異なるコンピュータやソフトを使っていました。同じ種類の文書でも保存場所や名前が違ったり、開くのに特別なプログラムが必要だったりしました。共有はファイルを送って複製を作ることになり、どのバージョンが最新か分からなくなることが多かったのです。

シンプルな目標:情報をリンク可能で共有可能にする

バーナーズ=リーの核心は、誰でも自分のコンピュータにドキュメントを公開でき、他者が統一された方法で(機種やOS、内部ディレクトリ構造を知らなくても)アクセスできるようにすることでした。

これを実現するにはいくつかの要素が協調する必要がありました:

  • 情報を一貫して名付け・特定する方法(住所)。
  • ネットワーク越しに情報を要求し受け取る基本的な方法。
  • 他のドキュメントへのリンクを含められる軽量なドキュメント形式。

シンプルさと相互運用性を優先

突破口は単一の機能ではなく、システムを小さく普遍的に保つ決定でした。ルールが十分にシンプルなら、異なるコンピュータや組織が実装しても通信できるようになります。

これがオープンスタンダードが最初から重要だった理由でもあります:多くの独立したシステムが参加できるように、公開された共有ルールが必要でした。ベンダー独自のツールチェーンではなく共通基準に注力したことで、ウェブは急速に普及し、新しいブラウザやサーバーが既存のコンテンツと互換性を保てるようになりました。

URL:ウェブの住所システム

混乱したオフィスドライブで“ファイルを共有する”ことを試みたことがあるなら、名前付けの難しさを見たはずです。異なるコンピュータは情報を異なる場所に保存し、フォルダは再編成され、同じファイル名が重複することもあります。共有のための共通の名前付けがなければ、「あの場所のあれを取ってきて」と確実に指示できません。

URLはウェブのためにこれを解決し、リソースのための普遍的でコピー&ペースト可能な住所を提供しました。

読めるURLの例

次は馴染みがあるかもしれません:

https://www.example.com:443/products/shoes?color=black\u0026size=42#reviews

各部分の意味(平易な説明):

  • httpsスキーム:どの規則で取得するか(暗号化されたHTTP)。
  • www.example.comホスト:どのサーバーに話すか。
  • :443ポート(多くの場合暗黙なので省略される)。
  • /products/shoesパス:そのサーバー上のどのリソースか。
  • ?color=black\u0026size=42クエリ:追加パラメータ(フィルタやトラッキングなどでよく使われる)。
  • #reviewsフラグメント:ページ内の位置(ブラウザが扱う)。

URLは「ページ」だけを指すわけではない

URLはサーバーが返せるほとんど何でも識別できます:HTMLページ、画像、PDF、ダウンロードファイル、アプリが使うAPIエンドポイントなど。

例:

  • /images/logo.png(画像)
  • /docs/terms.pdf(ドキュメント)
  • /api/orders/123(アプリ用のデータ)

URL vs. URI vs. “リンク”(シンプルに考える)

これらの語はしばしば混同されます:

  • URL:取得に使えるウェブの「住所」。
  • URI:より広い概念でURLを含む用語。
  • リンク:クリックするもの—通常はURLを含むテキストやボタン。

実用上は「URL=住所」と考えれば95%は十分です。

HTTP:ウェブのリクエストとレスポンスの言語

HTTPはウェブの基本的な会話様式です。シンプルな取引:ブラウザが何かを要求し、サーバーがそれに応じて返す。

基本概念:ブラウザが尋ね、サーバーが答える

URLを入力したりリンクをクリックしたりすると、ブラウザはサーバーにHTTPリクエストを送ります。リクエストは「この特定のリソースが欲しい」というメモのようなものです。

サーバーはHTTPレスポンスを返します。レスポンスは結果を包んだパッケージ:要求したコンテンツ(ページなど)や、何か別のことが起きた理由を含みます。

日常的なリクエスト(GETとPOST)

HTTPリクエストにはメソッドがあり、実際に何をするかを示します。

  • GET:『これをください』。例:ページの読み込みやファイルのダウンロード。
  • POST:『このデータを受け取ってください』。例:サインアップフォームの送信やコメント投稿。

GETは通常サーバーの状態を変えません(読み取り用)。POSTはデータを処理して何かを作成・変更する際に使われます。

ステータスコード:リクエストの結果

すべてのレスポンスにはステータスコードが付いてきます—配達の結果を示すものです。

  • 200:成功。要求したものを返す。
  • 404:見つからない。その住所にリソースがない。
  • 301:恒久的に移動した。ブックマークを更新すべき。

ヘッダーとコンテンツタイプ:荷札のようなもの

リクエストとレスポンスにはヘッダーも含まれ、"これは誰ですか"や"このコンテンツはこう扱ってください"といった情報を伝えます。

よく使うヘッダーの一つがContent-Typeで、text/html(ウェブページ)やapplication/json(データ)といった中身の種類を示し、ブラウザが正しく処理できるようにします。

HTML:ページとリンクのためのシンプルな形式

HTML(HyperText Markup Language)はウェブページの構造を記述する形式です。何が含まれているか、どう整理されているかを示すラベル付けと考えてください:"これは見出し"、"これは段落"、"これはリンク"、"これはフォーム要素"。

タグ:コンテンツのまわりのラベル

HTMLはタグでマークアップします。タグは通常、開くタグと閉じるタグでコンテンツを包みます。

見出しや段落はページに形を与えます。見出しは人にもブラウザにも「重要なセクションのタイトルです」と示し、段落は本文テキストであることを伝えます。

画像やリンクもHTMLで記述します。画像タグは画像ファイル(リソース)を指し、リンクタグは別のURLを指します。

ハイパーテキスト:リンクがすべてを変えた理由

HTMLの“HT”(HyperText)は、ウェブを以前のシステムと違わせた大きなアイデアです。メニューやフォルダ、特殊コマンドだけで移動するのではなく、テキスト内に埋め込まれたクリック可能なリンクでドキュメント間を直接ジャンプできるようになりました。

この変化は単純ですが強力です:知識がつながります。ページは出典、関連トピック、定義、次のステップを即座に参照でき、中央インデックスに戻る必要がなくなります。

小さな例:平易なリンク

以下は基本的なリンクの例です(コードブロックの中なので変更はしていません):

\u003ca href=\"/blog/how-http-works\"\u003eRead more about HTTP\u003c/a\u003e

平易に言うと:「Read more about HTTPという文言を表示し、クリックされたら/blog/how-http-worksのページに移動する」。

フォーム:見るだけから対話へ

HTMLはドキュメントの記述だけでなく、テキスト入力やチェックボックス、ボタンといった入力を記述できます。これらはページが情報を収集し、ログイン、検索、購入手続きなどをサーバーに送る手段を提供します。

HTML vs CSS vs JavaScript

役割の違いは明確です:

  • HTML構造と意味(見出し、段落、リンク、フォーム)を定義します。
  • CSSスタイル(色、余白、フォント、レイアウト)を制御します。
  • JavaScript振る舞い(検証、動的更新、インタラクティブ機能)を追加します。

現代のウェブアプリが複雑になっても、HTMLは出発点です:ページの内容とどこへつながるかを記述する共有可能で読みやすい方法です。

ウェブページが読み込まれる流れ:平易な手順

アイデアからスタックへ
ルートとリソースを設計し、Go製APIとReactフロントエンドを生成します。

サイトを訪れるとき、ブラウザは主に二つの仕事をします:どのコンピュータに話すかを見つけることと、正しいファイルを要求することです。

1) URLを入力する

URL(例:https://example.com/page)はページの住所で、ホスト名(example.com)やパス(/page)を含みます。

2) ブラウザがサイトを見つける(DNSルックアップ)

インターネット上のコンピュータは数値のIPアドレスで通信します。DNS(Domain Name System)はexample.comをIPアドレスにマッピングする“電話帳”です。

このルックアップは通常速く行われ、最近の訪問で結果が保存されていれば省略されることもあります。

3) ブラウザがそのコンピュータに接続する

ブラウザはそのIPアドレスのサーバーへ接続します。URLがhttps://で始まる場合、ブラウザは暗号化された接続も確立して、通信内容を第三者に読み取られにくくします。

4) ブラウザがHTTPで要求する

HTTPはウェブの"リクエストとレスポンス"の言語です。ブラウザは「/pageをください」といったHTTPリクエストを送ります。

サーバーはステータス("OK"や"Not Found"など)とコンテンツを含むHTTPレスポンスで応答します。

5) ブラウザがHTMLを受け取りレンダリングする

多くの場合そのコンテンツはHTMLです。HTMLは見出し、段落、リンクなどページの構造を記述します。

ブラウザがHTMLを読み進めると、追加で必要なファイル(スタイル用のCSS、操作用のJavaScript、画像、フォントなど)を見つけ、それぞれに対して同じHTTPのリクエスト/レスポンスを行います。

6) キャッシュ:「速くするためにコピーを保存」

ブラウザはキャッシュとして以前ダウンロードしたファイルのコピーを保存します。何も変わっていなければ、そのコピーを再利用して再ダウンロードを避けられます。

簡単なチェックリスト(流れ):

  • URLを入力
  • DNSがIPアドレスを見つける
  • ブラウザが接続(HTTPSなら暗号化)
  • 特定のパス/リソースをHTTPで要求
  • サーバーがHTML(および他のファイル)を送る
  • ブラウザがレンダリング;キャッシュは次回を速くする

サーバー、ブラウザ、リソース:基本的な役割

ユーザーが「リンクをタップしてページが表示される」と言うとき、裏ではサーバーブラウザリソースというシンプルな関係があります。

サーバー:ものがある場所

サーバーはインターネットに接続されたコンピュータ(またはコンピュータ群)で、URLでホストされるリソースを保有します。URLが住所なら、サーバーはその住所へ来訪する人々を受け入れて何を返すか決める場所です。

サーバーが返す"もの"はウェブページ、ファイル、データなど様々です。重要なのは、サーバーが特定のURLへの要求に応じるよう設定されている点です。

ブラウザ:要求して表示する場所

ブラウザは(Chrome、Safari、Firefoxなどの)プログラムで、サーバーからリソースを取得人間向けに表示します。

URLを入力したりリンクを押したりすると、ブラウザは:

  • そのURLのリソースをサーバーに要求する
  • レスポンスを受け取る
  • HTMLならレンダリングし、画像やダウンロードは保存・利用する

リソース:転送されるもの

リソースはURLで識別され、配信され得るすべてのものです。一般的な例:

  • ドキュメント(HTMLページ)
  • 画像(PNG、JPEG、SVG)
  • スクリプト(JavaScriptファイル)
  • スタイル(CSSファイル)
  • API(多くはJSONを返すエンドポイント)

このモデルはブラウザに限りません。モバイルアプリも通常はURL(APIエンドポイント)にリクエストを送り、アプリ固有の表示でデータを受け取ります。役割は同じです:アプリがクライアント、サーバーがホスト、APIのレスポンスがリソースです。

ドキュメントから対話へ:フォームとデータ

数分でライブ表示
プロジェクトをデプロイしてホストし、ページ・フォーム・リクエストをエンドツーエンドでテストできます。

初期のウェブページは主に情報を"表示する"ものでした。フォームはウェブが情報を"収集する"手段で、ページを双方向の会話に変えます。

フォームが実際にすること

HTMLフォームはテキストボックス、チェックボックス、ボタンなどの構造化されたフィールドと、二つの重要な指示を持ちます:

  • どこにデータを送るかaction URL)
  • どうやって送るかmethod、通常はGETかPOST)

「送信」ボタンを押すと、ブラウザは入力値をまとめてHTTPでそのURLへ送ります。これが"フィールドのあるドキュメント"と"入力を処理するアプリ"を橋渡しします。

GETとPOST(実務上の違い)

大まかに:

  • GETはフォームデータをURLのクエリ文字列に付けて送る(検索やフィルタに多い)。結果はブックマークや共有が容易です。
  • POSTはフォームデータをHTTPリクエストのボディに入れて送る(アカウント作成や注文など、何かを作成・変更する際に用いる)。

例:検索は/search?q=shoes(GET)に見え、チェックアウトは注文情報を/checkoutへPOSTすることが多いです。

サーバーがフォームを"処理"するとは

サーバー側では、プログラムがHTTPリクエストを受け取り、送信された値を読み取り次の処理を決めます:

  • 入力の検証(必須項目、メールアドレス形式など)
  • 認証情報のチェック(ログイン)
  • レコードの作成(サインアップ、サポートチケット)
  • 支払い処理や注文確定(チェックアウト)

サーバーは応答として新しいHTMLページ(「ありがとうございます」など)、エラーメッセージ、あるいは別のURLへのリダイレクトを返します。

簡単なセキュリティ注記:なぜHTTPSが重要か

フォームがパスワードや住所、支払い情報を含む場合、HTTPSは不可欠です。ネットワーク上の第三者が送信内容を読んだり改ざんしたりするのを防ぐためです。HTTPSがないと、単純なログインフォームでもユーザー情報が漏れる危険があります。

なぜ現代のアプリもURL、HTTP、HTMLに依存しているか

現代のウェブアプリは単なるページではありません。多くはHTMLページに読み込まれるコード(JavaScriptやCSS)を含み、それがページ全体を再読み込みせずに画面を更新します。

見た目がネイティブアプリのようでも(無限スクロール、リアルタイム更新、ドラッグ&ドロップ)、基盤はティム・バーナーズ=リーの三つの要素です。

URLは今もすべてを識別する

URLは単に"ページ"のためのものではありません。プロダクト、ユーザープロファイル、検索クエリ、写真、メッセージ送信のエンドポイントなど、あらゆるリソースの住所です。良いアプリはURLを使ってコンテンツを共有可能・ブックマーク可能・リンク可能にします—これがウェブの基本行動です。

HTTPは今もメッセージを運ぶ

アプリは裏でHTTPリクエストを送り、HTTPレスポンスを受け取ります。古典的なウェブサイトと同じ規則が適用されます:

  • GET(読み取り)、POST(送信)、PUT/PATCH(更新)、DELETE(削除)などのメソッド
  • 200404500などのステータスコード
  • キャッシュ、コンテンツタイプ、認証に関するヘッダー

APIは「データのためのウェブページ」

多くの現代アプリはAPIと通信します:HTTPでデータ(多くはJSON)を返すURLです。

例:

  • マップ機能が近隣の場所をマップAPIから取得する
  • チェックアウトが支払いAPIへ支払い情報を送る
  • チャットがメッセージを読み込み投稿するためのエンドポイントにアクセスする
  • 分析がイベントを分析用のエンドポイントへ送る

HTMLはしばしば出発点(場合によってはフォールバック)として重要です。もっと広く言えば、システムがURLとHTTPで合意できれば、誰が作ったかに関わらず接続できるのがウェブのプラットフォーム性です。

小さな実例として、ReactフロントエンドがJSON APIと通信し、主要画面のために共有可能なURLを持つようなものを作ると、これらの要素を確認できます。ツールの一例としてKoder.aiは同じモデルに依拠しています:チャットでアプリを説明すると、標準的なウェブスタック(フロントはReact、バックエンドはGo+PostgreSQLなど)を生成し、実際にURL、HTTPエンドポイント、ブラウザ配信のHTMLを扱う形で手間を減らします。

標準と互換性:ウェブがスケールする仕組み

ウェブが世界規模で機能するのは、共有された標準—誰もが従う"交通ルール"—の上に成り立っているからです。ある会社のブラウザが別の会社のサーバーに要求を送り、どこでもホストされていても、言語や実装が違っていても動作するのは、URL、HTTP、HTMLのような基本が共有されているからです。

標準が重要な理由

標準がなければ、すべてのサイトに専用のビューアが必要になり、すべてのネットワークが独自のリクエスト方式を持つことになりかねません。標準化は重要だが単純な問いを解きます:

  • リソースの名前付けはどうする?(URL)
  • クライアントはどうやって要求して受け取る?(HTTP)
  • 結果はどう構造化して表示・リンクできるようにする?(HTML)

これらが一貫していれば、ウェブは"混ぜて使える"ものになります:任意の適合ブラウザ+任意の適合サーバー=動作する、という形です。

標準は進化するがウェブを壊さない

注目すべきは、標準は改善されながらも基本は認識可能なままである点です。HTTPは初期からHTTP/1.1、次にHTTP/2やHTTP/3へと進化し、性能や効率が上がりましたが、核心は変わりません:クライアントがURLを要求し、サーバーがステータスコード、ヘッダー、ボディで応答するという考え方です。

HTMLも単純なドキュメントからより豊かなセマンティクスや埋め込みメディアへと成長しましたが、ページとハイパーリンクという基本概念は保持されています。

下位互換性は偶然ではなく機能である

ウェブの持続力の大きな要因は下位互換性を強く重視することです。新しいブラウザは古いページをレンダリングしようとし、新しいサーバーは古いHTTPリクエストを理解しようとします。結果として、コンテンツやリンクは何年も、時には何十年も生き続けることができます。

長持ちする設計のために

サイトやアプリを長く使えるようにしたければ、標準に基づく設計を心がけてください:共有状態には実際のURLを使い、キャッシュとステータスコードのHTTP規約に従い、余計なレイヤーを追加する前に有効なHTMLを書いておくこと。標準は制約ではなく、あなたの作品を移植可能で信頼でき、将来にも対応可能にするものです。

よくある誤解(とその簡単な直し方)

モバイルクライアントを追加
標準のHTTPでWeb APIと連携するFlutterモバイルアプリを作成します。

日常的にウェブを使っていても、いくつかの用語は頻繁に混同され、トラブルシューティングや計画、会話を邪魔します。ここでは誤解と素早い是正方法を示します。

“インターネット”と“ウェブ”の混同

誤解: インターネットとウェブは同じものだ。

直し方: インターネットはグローバルなネットワーク(ケーブル、ルーター、接続)。ウェブはその上で動くサービスで、URLHTTPHTMLから成ります。

URLとドメインの違い(追加部分が重要)

誤解: 「私のURLはexample.comだ」

直し方: example.comドメインです。URLはパスやクエリなどを含められ、返されるものを変えます。例:

  • https://example.com/pricing
  • https://example.com/search?q=shoes

追加部分がサーバーの応答を変えます。

HTMLとHTTPの違い

誤解: HTMLとHTTPは同じものだ。

直し方: HTTPは配達の"会話"(リクエストとレスポンス)。HTMLはその会話で配られる"荷物"の一つで、ページとリンクを記述します。HTTPはまたJSONや画像、PDF、動画なども運べます。

ステータスコードとリダイレクト

誤解: エラーが出たら"サイトが落ちている"、リダイレクトは常に悪いものだ。

直し方: ステータスコードは信号です:

  • 404:サーバーには到達しているがリソースが見つからない
  • 500:サーバー内部の問題
  • 301/302:リダイレクト(ページ移動後の通常の処理)

「URLは常に人が読むページを指す」

誤解: すべてのURLは人が読むページを開くべきだ。

直し方: URLはデータ/api/orders)、ファイル/report.pdf)、あるいはフォーム送信用のアクションエンドポイントを指すこともあります。

HTTPS=信頼できる?

誤解: HTTPSならそのサイトは安全で誠実だ。

直し方: HTTPSは通信を暗号化し、意図したドメインに接続していることを助けますが、ビジネスの信頼性までは保証しません。引き続き:

  • 情報源の評判
  • 期待しているURLかどうか
  • 指示されているダウンロードや送信内容

を評価する必要があります。

まとめとさらに学ぶための場所

ティム・バーナーズ=リーの核心アイデアは驚くほど小さなものでした:共有された住所体系、共有されたデータ要求の方法、共有された表示/リンクの形式でドキュメント(後にアプリ)をつなぐこと。

三つの基本要素(1分で)

URLは住所。何を欲しいかとどこにあるか(およびどうやって到達するか)を示します。

HTTPは会話。ブラウザとサーバーが何かを要求し応答するためのルール(ステータスコード、ヘッダー、キャッシュなど)です。

HTMLはページ形式。ブラウザが読み取ってレンダリングする内容を記述し、重要なのはそこに次の道筋(リンク)があることです。

習得しやすいメンタルモデル

ウェブを次の簡単な三段ループとして考えてください:

  1. 名付ける(URL)— 「この住所へ行け」
  2. 要求する(HTTP)— 「このリソースをください」
  3. 表示して次へつなぐ(HTML)— 「これが意味で、次の道はこちら」

このループが頭に入っていれば、クッキー、API、シングルページアプリ、CDNなどの現代的な詳細は、たいてい名付け、要求、描画のいずれかの洗練であることが理解しやすくなります。

次に読むべき記事

興味があれば、技術的すぎず深掘りできる次の読み物:

  • HTTP入門: /blog/how-http-works
  • URLの仕組み: /blog/what-is-a-url
  • HTMLの基礎とリンク: /blog/html-basics

これらの基礎を理解すれば、ウェブツールの評価("これはURLと標準HTTPに依存しているか?")、開発者との意思疎通、あるいは壊れたリンクやキャッシュ、"404と500"のような日常的な問題のトラブルシュートがずっと楽になります。

よくある質問

World Wide WebとInternetの違いは?

インターネットはコンピュータをつなぐグローバルなネットワーク(ルーターやケーブル、IPルーティング)です。ウェブはその上で動くサービスのひとつで、URLで識別され、HTTPでやり取りされ、ブラウザでは多くの場合HTMLとして表示されます。

多くのサービス(メール、オンラインゲーム、一部のチャットシステムなど)はインターネットを使いますが、厳密には“ウェブ”とは限りません。

URLとは何で、各部分はどういう意味?

**URL(Uniform Resource Locator)**はリソースの正確な住所だと考えてください。HTMLページ、画像、PDF、APIエンドポイントなどを指せます。

典型的なURLの要素:

  • スキームhttps)— どの方法でアクセスするか
  • ホストexample.com)— どのサーバーか
  • パス/products/shoes)— そのサーバー上のどのリソースか
  • クエリ?color=black)— 追加のパラメータ
  • フラグメント#reviews)— ページ内の位置(ブラウザ側で処理)
“example.com”はURLですか、それともドメインですか?そしてそれはなぜ重要?

example.comドメインであり、ホスト名の名前です。一方、URLはパスやクエリなどの詳細を含めることができ、それが実際に返される内容を左右します。

例えば:

  • https://example.com/pricing
  • https://example.com/search?q=shoes
URLの「#something」は何をする?

フラグメント#以降)はブラウザ側で処理され、HTTPリクエストには送られません。

一般的な用途:

  • ページ内のセクションへジャンプ(#reviews
  • 一部のクライアントサイドアプリで状態管理に使う

フラグメントだけを変えると、フルページの読み込みが発生しないことが多いです。

平たく言うとHTTPとは何?

HTTPはクライアント(ブラウザやアプリ)とサーバー間のリクエストとレスポンスの取り決めです。

実際には:

  • ブラウザがURLへ対してHTTPリクエストを送る
  • サーバーがステータスコード、ヘッダー、ボディ(HTML、JSON、画像など)を返す
GETとPOSTはいつ使うべき?

GET取得のために使います(読み取り目的)。ページを読み込む、データを取得する場合に使うのが一般的です。

POSTデータを送信して処理してもらうときに使います(アカウント作成、コメント投稿、チェックアウトなど)。

実用的なポイント:ブックマークや共有可能にしたい操作(検索など)にはGET、サーバー状態を変える操作にはPOSTが適しています。

200、404、301、500などのHTTPステータスコードは何を意味する?

ステータスコードはリクエストの結果を示します:

  • 200 — 成功
  • 404 — 指定のURLにそのリソースが見つからない(サーバーには到達している)
  • 301/302 — リダイレクト(別の場所へ移動)
  • 500 — サーバー内部のエラー

トラブルシュートでは、404はURL間違いや削除を、500はサーバー側のバグや障害を疑うのが早い手がかりです。

DNSとは何で、なぜページ読み込みの前に起こるの?

ブラウザがサーバーへ接続するにはIPアドレスが必要です。DNSは人が読める名前(例:example.com)をIPアドレスに変換する仕組みで、電話帳のような役割を果たします。

サイトが一部の環境で“名前解決できない”場合、DNSが原因であることがよくあります。

ブラウザキャッシュとは何で、どうして「古い」ページが見えることがある?

キャッシュはブラウザが以前にダウンロードしたリソースのコピーを保存して、次回を速くする仕組みです。

実務上の影響:

  • 更新がすぐに反映されないことがある(古いファイルが使われる)
  • デバッグ時はハードリロードやサイトデータのクリアが役立つ

サーバー側はHTTPヘッダーでキャッシュの振る舞い(有効期間や再検証方法など)を制御します。

HTTPSはそのサイトが信頼できることを意味する?

HTTPSは通信を暗号化し、接続先ドメインを確認するのに役立ちます。ログインやフォームなど、機密データを送る場合には必須です。

しかし、HTTPS がある=サイトが信頼できるとは限りません。安全性や評判を判断するには:

  • 情報源の評価
  • 期待しているURLかどうかの確認
  • 要求されているダウンロードや送信内容の検証

が必要です。

Related posts