基礎知識: ウェブサイトのアドレスの前の 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/ の違い

推薦する

テーブル内の要素のドラッグと並べ替えの問題について簡単に説明します

最近、要素テーブルを使用すると、並べ替えの問題によく遭遇します。単純な並べ替えであれば、要素の公式が...

あなたのウェブサイトはIE8に適していますか?

オリンピック期間中にIE8ベータ2がリリースされ、英語版のリリースに合わせて中国語版も第一波でリリー...

Java を Mysql バージョン 8.0.18 に接続する方法の詳細な説明

JavaとMysql 8.0.18バージョンの接続方法については、参考までに具体的な内容は以下のとお...

Vue の proto ファイルの関数呼び出しのグラフィカルな説明

1. protoをコンパイルするすべての .proto ファイルを保存するために、src フォルダー...

要素の高さを下から上へ、上から下へ制御する CSS メソッド

よくある質問から議論を始めましょう。CSS を使用して要素の高さを [ブラウザ コンテンツ ウィンド...

vuex で履歴を実装するためのサンプルコード

私は最近、ユーザー操作を元に戻す、またはやり直す機能を備えたビジュアル操作プラットフォームを開発して...

MySQLでルートユーザーのパスワードを変更する方法

方法1: SET PASSWORDコマンドを使用する mysql> username@loca...

自動ウェブページ更新と自動ジャンプのサンプルコード

ウェブページの自動更新: <head></head> の間に次のコードを追加...

異なるデータベースで DROP TABLE を書く方法

異なるデータベースで DROP TABLE を書く方法1.MySQL 存在する場合はテーブルを削除 ...

mysql8.0.21 のダウンロードとインストールに関する詳細なチュートリアル

公式ウェブサイトアドレス: https://www.mysql.com/インストールの提案: インス...

Vueの監視プロパティの詳細

目次1.watchは一般的なデータ(数値、文字列、ブール値)の変更を監視します。 1. 数値2. 文...

mysqlはエクスポートされたデータのsqlファイルから指定されたテーブルのみをインポートすることを実装します

シナリオ昨日、システムは dbAll.sql.gz という名前の特定のデータベースのすべてのテーブル...

Alibaba Cloud ECS クラウド サーバー (Linux システム) は、MySQL をインストールした後にリモートで接続できません (落とし穴)

昨日、1年間使用していた Alibaba Cloud サーバーを購入しました。システムは Linux...

HTML 選択オプション デフォルトの選択方法

オプションに属性 selected = "selected" を追加すると、それ...

MySQL マスタースレーブレプリケーションと読み取り書き込み分離の詳細な説明

記事マインドマップマスター/スレーブ レプリケーションと読み取り/書き込み分離を使用する理由は何です...