基礎知識: ウェブサイトのアドレスの前の http はどういう意味ですか?

基礎知識: ウェブサイトのアドレスの前の http はどういう意味ですか?

HTTPとは何ですか?
ウェブサイトを閲覧したいときは、ブラウザのアドレス バーにウェブサイトのアドレス (例: www.jb51.net) を入力するだけですが、ブラウザのアドレス バーに表示されるのは https://www.jb51.net です。なぜ余分な「http」があるのか​​ご存じですか?
1. HTTP プロトコルとは何ですか? ブラウザのアドレスバーに入力する Web サイトのアドレスは URL (Uniform Resource Locator) と呼ばれます。すべての家に住所があるように、すべての Web ページにはインターネット アドレスがあります。ブラウザのアドレス ボックスに URL を入力したり、ハイパーリンクをクリックしたりすると、その URL によって参照するアドレスが識別されます。ブラウザはハイパーテキスト転送プロトコル (HTTP) を使用して、Web サーバー上のサイトから Web ページ コードを抽出し、それを美しい Web ページに変換します。したがって、HTTP を理解する前に、まず URL の構成を理解する必要があります (例: https://www.jb51.net)。それは次のことを意味します:
1. http://: は Hypertext Transfer Protocol の略で、microsoft.com サーバーに Web ページを表示するように通知します。通常は入力する必要はありません。
2. www: Web (World Wide Web) サーバーを表します。
3. Microsoft.com/: これは、Web ページをホストするサーバーのドメイン名、またはサイト サーバーの名前です。
4. China/: は、フォルダーと同様に、サーバー上のサブディレクトリです。
5. Index.htm: index.htm はフォルダー内の HTML ファイル (Web ページ) です。
インターネットの基本プロトコルは TCP/IP プロトコルであることはご存じのとおりです。ただし、TCP/IP モデルの最上位層はアプリケーション層であり、ここにすべての高レベル プロトコルが含まれています。高レベルのプロトコルには、ファイル転送プロトコル FTP、電子メール転送プロトコル SMTP、ドメイン ネーム システム サービス DNS、ネットワーク ニュース転送プロトコル NNTP、HTTP プロトコルなどがあります。
HTTP (Hypertext Transfer Protocol) は、WWW サーバーからローカル ブラウザーにハイパーテキストを転送するために使用される転送プロトコルです。ブラウザの効率を高め、ネットワーク トラフィックを削減できます。これは、コンピュータがハイパーテキスト ドキュメントを正確かつ迅速に送信することを保証するだけでなく、ドキュメントのどの部分を送信するか、コンテンツのどの部分を最初に表示するか (テキストをグラフィックスの前に表示するなど) を決定します。ブラウザに表示される Web アドレスがすべて http:// で始まるのはそのためです。
WWW の誕生以来、多彩な情報と仮想世界が私たちの目の前に現れていますが、どうすれば必要な情報をより簡単に見つけることができるのでしょうか? WWW ドキュメントの標準形式としてハイパーテキストを使用することが決定されたとき、科学者は 1990 年にこれらのハイパーテキスト ドキュメントを迅速に検索できるプロトコル、つまり HTTP プロトコルをすぐに開発しました。数年の使用と開発を経て、継続的に改善と拡張が行われてきました。現在、WWW では HTTP/1.0 の 6 番目のバージョンが使用されています。
HTTPの仕組み

URL の構造を理解したところで、HTTP はどのように機能するのでしょうか?次にこの問題について議論します。
HTTP プロトコルは、リクエスト/レスポンス パラダイム (クライアント/サーバーと同等) に基づいているためです。クライアントがサーバーとの接続を確立すると、次の形式でサーバーに要求を送信します: Uniform Resource Identifier (URL)、プロトコル バージョン番号、要求修飾子、クライアント情報、および可能なコンテンツを含む MIME 情報。サーバーは、要求を受信すると、ステータス行の形式で対応する応答情報を提供します。これには、情報のプロトコル バージョン番号、成功またはエラー コード、それに続いてサーバー情報、エンティティ情報、および可能なコンテンツを含む MIME 情報が続きます。
ほとんどの HTTP 通信はユーザー エージェントによって開始され、オリジン サーバー上のリソースに対する要求で構成されます。最も単純なケースは、おそらく、ユーザー エージェントとサーバー間の単一の接続を介して実現されます。インターネットでは、HTTP 通信は通常、TCP/IP 接続を介して行われます。デフォルトのポートは TCP 80 ですが、他のポートも使用できます。しかし、これは HTTP プロトコルがインターネットや他のネットワーク上の他のプロトコルの上にのみ実装できることを意味するものではありません。 HTTP は信頼性の高いトランスポートのみを意味します。
このプロセスは、注文するために電話をかける場合とまったく同じです。販売店に電話して必要な商品の仕様を伝えると、販売店はどの商品が在庫にあり、どの商品が在庫切れであるかを教えてくれます。これらについては、電話回線を介して電話で通信します (HTTP は TCP/IP 経由)。また、販売者が FAX 機を持っている限り、もちろん FAX で通信することもできます。
上記では、HTTP プロトコルのマクロ的な動作モードについて簡単に紹介しました。次に、HTTP プロトコルの内部動作プロセスを紹介します。
WWW では、「クライアント」と「サーバー」は相対的な概念であり、特定の接続中にのみ存在します。つまり、ある接続のクライアントは、別の接続ではサーバーとして機能する場合があります。 HTTP プロトコルに基づくクライアント/サーバー モデルにおける情報交換プロセスは、接続の確立、要求情報の送信、応答情報の送信、接続の終了の 4 つのプロセスに分かれています。これはまさに上記の例と同じで、電話注文の全プロセスです。
実際、簡単に言えば、どのサーバーにも、HTML ファイルに加えて、ユーザーの要求に応答するための HTTP 常駐プログラムがあります。ブラウザは、サーバーにリクエストを送信する HTTP クライアントです。ブラウザにスタート ファイルを入力するか、ハイパーリンクをクリックすると、ブラウザはサーバーに HTTP リクエストを送信します。このリクエストは、IP アドレスで指定された URL に送信されます。常駐プログラムは要求を受け取り、必要な操作を実行し、要求されたファイルを返します。このプロセスでは、ネットワーク上で送受信されるデータは 1 つ以上のパケットに分割されます。各パケットには、送信されるデータと、ネットワークにデータ パケットの処理方法を指示する制御情報が含まれます。 TCP/IP は各データ パケットの形式を決定します。事前に知らされていなければ、情報は送信時に多くの小さな断片に分割され、その後再構成されることは分からないでしょう。
つまり、商店は商品を所有しているだけでなく、電話に応答するスタッフもいます。電話をかけると、あなたの声はさまざまな複雑なデータに変換され、電話回線を通じて相手の電話に送信されます。相手の電話はさまざまな複雑なデータを音に変換し、他の商店のスタッフがあなたの要求を理解できるようにします。このプロセスでは、音がどのように複雑なデータに変換されるかを理解する必要はありません。

<<:  CSS3 変換によって子要素の固定位置を絶対位置に変更する方法

>>:  HTML における br と br/ の違い

推薦する

Node.js における非同期プログラミングの知識ポイントの詳細な説明

導入JavaScript はデフォルトでシングルスレッドであるため、コードは並列実行するための新しい...

Bash で山括弧を使用するその他の方法

序文この記事では、山括弧のその他の用途をさらに詳しく見ていきます。前回の記事では、山括弧 (<...

mysql 計算関数の詳細

目次2. フィールドの連結2. MySQL関数の例をいくつか挙げてください。 2.1 シンボル処理2...

XHTML チュートリアル: 初心者のための XHTML の基礎

<br />当サイトのオリジナルコンテンツですので、転載の際は出典を123WORDPRE...

Ubuntu 20.04 に Python 3 仮想環境をインストールする詳細なチュートリアル

以下はすべて仮想マシン上で実行されます1. pip3をインストールするsudo apt で pyth...

DIV 背景半透明テキスト非半透明スタイル

DIVの背景は半透明ですが、DIV内の文字は半透明ではありませんコードをコピーコードは次のとおりです...

WeChatアプレットが9マスグリッド効果を実現

この記事では、WeChatアプレットの9マスグリッド効果を実現するための具体的なコードを参考までに紹...

MySQL 整合性制約の例の詳細な説明

この記事では、MySQL の整合性制約について説明します。ご参考までに、詳細は以下の通りです。メイン...

Docker を使用してイメージをローカルにパッケージ化してデプロイする方法

初めてDockerを使用してイメージをローカルにパッケージ化してデプロイするまず、私のラップトップシ...

MySql8.0以降のバージョンでROOTパスワードを正しく変更する方法

展開環境:インストールバージョン Red Hat Cent 7.0 MYSQL バージョン 8.0....

HTML 背景画像と背景色_PowerNode Java アカデミー

1. HTML 画像 <img> 1. <img> タグとその src 属性...

Linux ユーザー状態とカーネル状態間の通信方法の詳細な説明

CPU 権限の制限により、Linux ユーザー状態とカーネル状態間の通信は、プロセス間通信を使用した...

HTMLはa要素hrefのURLリンクを自動的に更新したり新しいウィンドウを開いたりする機能を実装する

場合によっては、次のような機能を実装したいことがあります。リンクをクリックします。リンクがブラウザで...

MySQL シリーズ 12 バックアップとリカバリ

目次チュートリアルシリーズ1. バックアップ戦略の説明1. バックアップの種類2. バックアップで考...

Nginx gzip設定について

nginx がリソース圧縮を実現する原理は、ngx_http_gzip_module モジュールを介...