ブラウザでURLを入力してから、ブラウザでページを表示するまでの間に、何が起こっているのかを誰かに教えてもらえますか?プロセスの詳細な説明は非常に役立ちます。
ブラウザでURLを入力してから、ブラウザでページを表示するまでの間に、何が起こっているのかを誰かに教えてもらえますか?プロセスの詳細な説明は非常に役立ちます。
回答:
注意:これは非常にラフで 単純化されたスケッチです。可能な限り単純なHTTPリクエスト(HTTPSなし、HTTP2なし、追加なし)、できるだけ単純なDNS、プロキシなし、シングルスタックIPv4、1つのHTTPリクエストのみ、単純なHTTPサーバーもう一方の端で、どのステップでも問題はありません。これは、ほとんどの現代の意図と目的にとって、非現実的なシナリオです。これらのすべては実際の使用でははるかに複雑であり、技術スタックはこれが書かれて以来、桁違いに複雑になっています。これを念頭に置いて、次のタイムラインはまだいくらか有効です。
繰り返しになりますが、これらの各ポイントについての議論は無数のページを埋めました。これは、明確にするために要約したものにすぎません。また、これと並行して他にも多くのことが行われます(入力されたアドレスの処理、投機的なプリフェッチ、ブラウザーの履歴へのページの追加、ユーザーへの進行状況の表示、プラグインと拡張機能への通知、ダウンロード中のページのレンダリング、パイプライン、接続の追跡キープアライブ、Cookie管理、悪意のあるコンテンツのチェックなど)-そして、操作全体がHTTPS(証明書と暗号化とピン留め、オーマイ!)でさらに複雑になります。
最初に、コンピューターは宛先ホストを検索します。ローカルDNSキャッシュに存在する場合は、その情報を使用します。それ以外の場合は、IPアドレスが見つかるまでDNSクエリが実行されます。
次に、ブラウザーは宛先ホストへのTCP接続を開き、HTTP 1.1に従って要求を送信します(またはHTTP 1.0を使用する可能性がありますが、通常のブラウザーはこれを行いません)。
サーバーは必要なリソース(存在する場合)を検索し、HTTPプロトコルを使用して応答し、クライアント(=ブラウザー)にデータを送信します
次に、ブラウザーはHTMLパーサーを使用して、後で画面に表示されるドキュメント構造を再作成します。画像、CSSファイル、JavaScriptファイルなどの外部リソースへの参照が見つかった場合、これらはHTMLドキュメント自体と同じ方法で配信されます。
HTTPの仕様を調べます。または、開始するには、http://www.jmarshall.com/easy/http/をお試しください