Web サーバーは、独立したドメイン名を持つ複数の Web サイトを構築できるほか、通信経路上のトランジット サーバーとして機能して伝送効率を向上させることもできます。 1. 単一の仮想ホストで複数のドメイン名を実装する HTTP/1.1 仕様では、1 つの HTTP サーバーで複数の Web サイトをホストできます。 物理的にサーバーが 1 台しかない場合でも、仮想ホスト機能を使用することで複数のサーバーが存在することが想定されます。 インターネットでは、対象のウェブサイトにアクセスする前に、DNS サービスを通じてドメイン名が IP アドレスにマッピングされます (ドメイン名解決)。リクエストがサーバーに送信されると、すでに IP アドレスの形式でアクセスされていることがわかります。 したがって、サーバーが www.tricorder.jp と www.hackr.jp という 2 つのドメイン名をホストしている場合、リクエストを受信すると、どのドメイン名にアクセスするかを判断する必要があります。 仮想ホストは同じ IP アドレスで、異なるホスト名とドメイン名を持つ複数の Web サイトをホストできるため、HTTP リクエストを送信するときは、ホスト名またはドメイン名の URI を Host ヘッダーに完全に指定する必要があります。 2. 通信データ転送手順: プロキシ、ゲートウェイ、トンネル これらのアプリケーションとサーバーは、通信回線上の次のサーバーに要求を転送し、そのサーバーからの応答を受信してクライアントに転送することができます。 ①プロキシ:プロキシサーバーの基本的な動作は、クライアントからのリクエストを受信し、他のサーバーに転送することです。プロキシはリクエスト URI を変更せず、リソースを保持しているターゲット サーバーに直接送信します。リソース エンティティを保持するサーバーは、オリジン サーバーと呼ばれます。ソースサーバーから返された応答は、プロキシサーバーを通過した後、クライアントに送信されます。 プロキシ サーバーを使用する理由としては、キャッシュ テクノロジを使用してネットワーク帯域幅のトラフィックを削減すること、組織内の特定の Web サイトへのアクセスを制御すること、アクセス ログを取得することを主な目的としていることなどが挙げられます。 プロキシを使用する方法はいくつかあります。 キャッシュプロキシ: プロキシが応答を転送する場合、キャッシュ プロキシはリソースのコピーをプロキシ サーバーに事前に保存します。プロキシは同じリソースの要求を再度受信すると、元のサーバーからリソースを取得する代わりに、以前にキャッシュされたリソースを応答として返すことができます。 透過プロキシ: 要求または応答を転送するときにメッセージに対して何の処理も実行しないプロキシ タイプは、透過プロキシと呼ばれます。逆に、メッセージの内容を処理するプロキシは非透過プロキシと呼ばれます。 ②ゲートウェイ:ゲートウェイの動作メカニズムはプロキシの動作メカニズムと非常に似ています。ゲートウェイにより、通信回線上のサーバーは HTTP 以外のプロトコル サービスを提供できるようになります。ゲートウェイを使用すると、クライアントとゲートウェイ間の通信回線で暗号化を使用して接続のセキュリティを確保できるため、通信のセキュリティを実現できます。 ③ トンネル:トンネルは必要に応じて他のサーバーとの通信回線を確立し、SSLなどの暗号化方式を使用して通信を行うことができます。トンネルの目的は、クライアントがサーバーと安全に通信できるようにすることです。 トンネル自体は HTTP リクエストを解析しません。つまり、リクエストはそのまま後続のサーバーに転送されます。通信中の双方が切断するとトンネルは終了します。 3. リソースを節約するためのキャッシュ キャッシュは、プロキシ サーバーまたはクライアントのローカル ディスクに保存されているリソースのコピーです。キャッシュを使用すると、サーバーへのアクセスが削減され、通信トラフィックと通信時間が節約されます。 キャッシュ サーバーはプロキシ サーバーの一種であり、キャッシュ プロキシ タイプに分類されます。 ①キャッシュの有効期限 ②クライアントキャッシュ |
<<: LinuxでRPMを使用してmysql5.7.17をインストールする
>>: JavaScript WeakMap の使い方の詳しい説明
概要最近MySQL関連の知識を勉強し始めました。学んだ知識ポイントと自分の理解を元に整理して共有しま...
Web サービスは、アプリケーション間の通信に関係します。 WSDL は、XML ベースの Web ...
導入作業プロセス中に、遅いクエリが調整されることがあります。 MySQL SQL ステートメントのチ...
マスタースレーブ同期 (マスタースレーブレプリケーションとも呼ばれる) は、マスタースレーブデータの...
目次序文接続管理追加の接続管理ポート要約する序文皆さんの多くは、次のようなエラー メッセージに遭遇し...
シェルスクリプトを使用したMySQLデータベースの自動バックアップデータベースを頻繁にバックアップす...
この記事では、主に 2 種類の下線の動的効果について説明します。1 つ目は、ホバーすると X 軸が内...
HTMLでは、中国語のフレーズ「學好好學」は「學好好學」と表現できます。プロジェクトでは、SMSアラ...
序文JavaScriptを学ぶ学生は、 AJAX (非同期JavaScriptとxml) 変換は非同...
目次1. 初心者が陥りがちな間違い2. Iteratorのremove()メソッドを使用する3. f...
Docker の使用に関するヒント1. 停止したDockerコンテナをすべてクリーンアップする停止し...
この記事では、jsネイティブカルーセルプラグインの具体的なコードを参考までに共有します。具体的な内容...
この記事では、参考までに、簡単な英中辞典を実装するためのjsの具体的なコードを紹介します。具体的な内...
nginx.conf で複数のサーバーを設定します。 http リクエストを処理する際、nginx ...
場合によっては、フォーム内のテキスト ボックスを読み取り専用にして、ユーザーがその中の情報を変更でき...