Webサーバーの詳しい紹介
1. HTTPプロトコルの紹介
HTTPはHyper Text Transfer Protocolの略です。この開発は、World Wide Web Consortium と Internet Engineering Task Force (IETF) の協力の成果であり、最終的には HTTP/1.0 バージョンを定義する一連の RFC 1945 をリリースしました。これらの中で最も有名なのは RFC 2616 です。 RFC 2616 は、現在一般的に使用されているバージョンである HTTP 1.1 を定義しています。
HTTPプロトコル(HyperText Transfer Protocol、ハイパーテキスト転送プロトコル)は、WWWサーバーからローカルブラウザにハイパーテキストを転送するために使用される転送プロトコルです。これにより、ブラウザの効率が向上し、ネットワーク送信が削減されます。これにより、コンピュータがハイパーテキスト ドキュメントを正確かつ迅速に送信することが保証されるだけでなく、ドキュメントのどの部分が送信されるか、コンテンツのどの部分が最初に表示されるか (グラフィックの前のテキストなど) なども決定されます。
HTTPは、データ(HTMLファイル、画像ファイル、クエリ結果など)を転送するためのTCP/IPに基づく通信プロトコルです。
HTTP は、リクエストとレスポンスで構成されるアプリケーション層プロトコルであり、標準的なクライアント/サーバー モデルです。
HTTP はステートレス プロトコルです。
![HTTP プロトコルの深い理解.jpg のアップロードに失敗しました。もう一度お試しください。]

これにより、HTTP プロトコルの使用が制限され、クライアントがリクエストを開始しない場合、サーバーはクライアントにメッセージをプッシュすることができなくなります。
HTTP プロトコルはステートレス プロトコルです。このリクエストと同じクライアントの以前のリクエストの間には対応関係がありません。
2.httpプロトコル解析
1.ブラウザリクエスト

httpリクエストメソッド
データベースのCRUD追加、削除、変更、確認操作に対応可能です:
- CREATE:PUT
- READ: GET
- UPDATE: POST
- DELETE: DELETE
HTTP/1.1 200 OK
200 は成功した応答を示し、次の OK は説明です。
戻り値が 200 ではない場合、多くの場合、次のような他の関数があります。
- 失敗した応答には、404 Not Found: Web ページが存在しません
- 500 Internal Server Error: サーバーに内部エラーがあります。
- ...etc. お待ちください...

Content-Type: text/html
Content-Type は応答のコンテンツを示します。ここで text/html は HTML Web ページを表します。
3. ブラウザの解析プロセス
ブラウザが Sina のホームページの HTML ソース コードを読み取ると、HTML を解析してページを表示し、HTML 内のさまざまなリンクに基づいて HTTP リクエストを Sina サーバーに送信します。対応する画像、ビデオ、Flash、JavaScript スクリプト、CSS、その他のリソースにリンクし、最終的に完全なページを表示します。
3. 概要
1. HTTP リクエストのプロセス
Sina のホームページに従って、HTTP リクエストのプロセスをまとめてみましょう:
ステップ 1: リクエストには次のものが含まれます:
メソッド: GETまたは POST、GET はリソースのみを要求します。POST にはユーザー データが伴います。
パス: /full/url/path;
ドメイン名: ホスト ヘッダーで指定: ホスト: www.sina.com
およびその他の関連ヘッダー。 POST の場合、リクエストにはユーザー データを含む本文も含まれます。
応答タイプ:
およびその他の関連ヘッダーで指定されます。には、応答のコンテンツが含まれる Body があり、Web ページの HTML ソース コードが Body に含まれます。
ステップ 3: ブラウザーが画像などの他のリソースをサーバーに要求し続ける必要がある場合は、別の HTTP 要求を作成し、ステップ 1 と 2 を繰り返します。
Web で採用されている HTTP プロトコルは、非常にシンプルなリクエスト/レスポンス モデルを採用しており、開発が大幅に簡素化されています。ページを作成するときは、HTTP リクエストで HTML を送信するだけでよく、写真やビデオなどを添付する方法を考慮する必要はありません。ブラウザは写真やビデオをリクエストする必要がある場合、別の HTTP リクエストを送信します。したがって、HTTP リクエストは 1 つのリソースのみを処理します (これは、TCP プロトコルの短い接続として理解できます。各リンクは 1 つのリソースのみを取得します。さらに必要な場合は、複数のリンクを確立する必要があります)
HTTP プロトコルには強力な機能もありますスケーラビリティ ブラウザはホームページを要求しますが、Sina は HTML で他のサーバーからリソースをリンクできます。 - orient/strip%7CimageView2/2/w/1240) を使用して、リクエストの圧力をさまざまなサーバーに分散し、1 つのサイトを他のサイトにリンクしたり、無数のサイトが相互にリンクして World Wide Web を形成します。 WWWとして。
2.HTTP 形式


- 各 HTTP 要求と応答には、ヘッダーと本文の 2 つの部分が含まれており、本文は同じ形式に従います。はオプションです。
- HTTPプロトコルはテキストプロトコルなので、その形式も非常にシンプルです。
- HTTP GET リクエスト形式:
GET /path HTTP/1.1
2 つの連続した rn に遭遇すると、Header 部分が終了し、後続のデータはすべて Body になります。
Header1: Value1
Header2: Value2
Header3: Value3
各ヘッダーは 1 行、改行文字は rn または os.linesep を使用します
HTTP POST リクエスト形式:
POST /path HTTP/1.1
Header1: Value1
Header2: Value2
Header3: Value3
body data go here...HTTP 応答形式:
HTTP 応答に body が含まれる場合、それも rnrn で区切られます。
200 OK
Header1: Value1
Header2: Value2
Header3: Value3
body データがここに入ります...本文のデータ型は Content-Type ヘッダーによって決定されることに注意してください。Web ページの場合、本文は画像のバイナリ データです。
Content-Encoding が存在する場合、Body データは圧縮されています。そのため、Content-Encoding: gzip が表示された場合は、実際のデータを取得するために最初に Body データを解凍する必要があります。圧縮の目的は、ボディのサイズを削減し、ネットワーク伝送を高速化することです。
4Web静的サーバー1. 固定ページを表示します
クライアントブラウザページを表示します



学習プロセス中に問題が発生した場合、または学習リソースを入手したい場合は、学習交換グループ
343599877 への参加を歓迎します。一緒にフロントエンドを学びましょう!
以上がWebサーバーの詳しい紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









解決策: 1. eMule の設定をチェックして、正しいサーバー アドレスとポート番号が入力されていることを確認します; 2. ネットワーク接続を確認し、コンピューターがインターネットに接続されていることを確認し、ルーターをリセットします; 3. サーバーが正常に動作しているかどうかを確認します。ネットワーク接続に問題がない場合は、サーバーがオンラインであるかどうかを確認する必要があります; 4. eMule のバージョンを更新し、eMule 公式 Web サイトにアクセスし、eMule ソフトウェアの最新バージョンをダウンロードします。 5.助けを求めてください。

RPC サーバーが利用できず、デスクトップからアクセスできない場合はどうすればよいですか? 近年、コンピューターとインターネットが私たちの生活の隅々に浸透しています。集中コンピューティングとリソース共有のテクノロジーとして、リモート プロシージャ コール (RPC) はネットワーク通信において重要な役割を果たします。ただし、場合によっては、RPC サーバーが利用できなくなり、デスクトップにアクセスできなくなる状況が発生することがあります。この記事では、この問題の考えられる原因のいくつかについて説明し、解決策を提供します。まず、RPC サーバーが使用できない理由を理解する必要があります。 RPCサーバーは、

LINUX ユーザーとして、CentOS にさまざまなソフトウェアやサーバーをインストールする必要があることがよくありますが、この記事では、CentOS に Fuse をインストールしてサーバーをセットアップする方法を詳しく紹介し、関連する作業をスムーズに完了できるようにします。 CentOS のインストールfusionFuse は、権限のないユーザーがカスタマイズされたファイル システムを通じてファイル システムにアクセスして操作できるようにするユーザー スペース ファイル システム フレームワークです。CentOS への Fuse のインストールは非常に簡単で、次の手順に従うだけです: 1. ターミナルを開き、次のようにログインします。ルートユーザー。 2. 次のコマンドを使用して、fuse パッケージをインストールします: ```yuminstallfuse3。インストール プロセス中のプロンプトを確認し、「y」を入力して続行します。 4. インストール完了

DHCP リレーの役割は、2 つのサーバーが異なるサブネット上にある場合でも、受信した DHCP パケットをネットワーク上の別の DHCP サーバーに転送することです。 DHCP リレーを使用すると、ネットワーク センターに集中 DHCP サーバーを展開し、それを使用してすべてのネットワーク サブネット/VLAN に IP アドレスを動的に割り当てることができます。 Dnsmasq は、一般的に使用される DNS および DHCP プロトコル サーバーであり、ネットワーク内の動的ホスト構成の管理を支援する DHCP リレー サーバーとして構成できます。この記事では、dnsmasq を DHCP リレー サーバーとして構成する方法を説明します。コンテンツ トピック: ネットワーク トポロジ DHCP リレー上の静的 IP アドレスの構成 集中型 DHCP サーバー上の DHCP リレー D

ネットワーク データ転送において、IP プロキシ サーバーは重要な役割を果たし、ユーザーが実際の IP アドレスを隠し、プライバシーを保護し、アクセス速度を向上させるのに役立ちます。この記事では、PHP を使用して IP プロキシ サーバーを構築する方法に関するベスト プラクティス ガイドを紹介し、具体的なコード例を示します。 IPプロキシサーバーとは何ですか? IP プロキシ サーバーは、ユーザーとターゲット サーバーの間にある中間サーバーであり、ユーザーとターゲット サーバー間の転送ステーションとして機能し、ユーザーのリクエストと応答を転送します。 IPプロキシサーバーを使用する場合

Epic サーバーがオフラインのときにゲームに参加できない場合はどうすればよいですか?この問題は多くの友人が経験しているはずです。このプロンプトが表示されると、正規のゲームが起動できなくなります。この問題は通常、ネットワークやセキュリティ ソフトウェアからの干渉によって引き起こされます。では、どのように解決すればよいでしょうか?今回の編集者が説明します。解決策を皆さんと共有したいと思います。今日のソフトウェア チュートリアルが問題の解決に役立つことを願っています。オフライン時に epic サーバーがゲームに参加できない場合の対処方法: 1. セキュリティ ソフトウェアによって妨害されている可能性があります。ゲーム プラットフォームとセキュリティ ソフトウェアを閉じて、再起動します。 2. 2 つ目は、ネットワークの変動が大きすぎることです。ルーターを再起動して機能するかどうかを確認してください。状態に問題がない場合は、5G モバイル ネットワークを使用して動作を試みることができます。 3. それならもっとあるかもしれない

PHPFFmpeg拡張機能をサーバーにインストールするにはどうすればよいですか? PHPFFmpeg 拡張機能をサーバーにインストールすると、PHP プロジェクトでオーディオ ファイルとビデオ ファイルを処理し、オーディオ ファイルとビデオ ファイルのエンコード、デコード、編集、処理などの機能を実装できます。この記事では、PHPFFmpeg 拡張機能をサーバーにインストールする方法と、具体的なコード例を紹介します。まず、PHP と FFmpeg がサーバーにインストールされていることを確認する必要があります。 FFmpeg がインストールされていない場合は、以下の手順に従って FFmpe をインストールできます。

Cockpit は、Linux サーバー用の Web ベースのグラフィカル インターフェイスです。これは主に、初心者/熟練ユーザーにとって Linux サーバーの管理を容易にすることを目的としています。この記事では、Cockpit アクセス モードと、CockpitWebUI から Cockpit への管理アクセスを切り替える方法について説明します。コンテンツ トピック: コックピット エントリ モード 現在のコックピット アクセス モードの確認 CockpitWebUI からコックピットへの管理アクセスを有効にする CockpitWebUI からコックピットへの管理アクセスを無効にする まとめ コックピット エントリ モード コックピットには 2 つのアクセス モードがあります。 制限付きアクセス: これは、コックピット アクセス モードのデフォルトです。このアクセス モードでは、コックピットから Web ユーザーにアクセスできません。
