ホームページ >バックエンド開発 >PHPチュートリアル >ウェブサイトがどのように機能するかを簡単に説明できる人はいますか?

ウェブサイトがどのように機能するかを簡単に説明できる人はいますか?

WBOY
WBOYオリジナル
2016-06-17 08:31:181000ブラウズ

現在普及しているテクノロジーを対象としています。
例: HTML、CSS、PHP、JavaScript、データベース、XML、DOM などは正確に何をするのか、またそれらはどのように連携するのか。出力された Web ページのコンテンツがどのように更新されるか。
バックグラウンドプログラムにおいてプログラミング言語はどのような役割を果たしているのでしょうか? どのようなプログラミング言語でもサーバー言語として使用できると言われるのはなぜですか? 重要なのは、どの言語が最適であるかを見極めることです。

この質問に答えるには膨大な量の文章が必要で、非常に難しいことは承知しています。すべてのヒーローに感謝したいと思います。

返信内容:

あなたが訪れたウェブサイトの本質について話しましょう。ブラウザを使用(アドレスを入力)すると、ブラウザはまず設定した DNS サーバーにリクエストを送信し、DNS サーバーは Web サイトの実際の IP アドレスを返します。インターネットの IP アドレスは一意であるため、この IP に基づいて、コンピューターはこの IP によって提供されるパブリック リソース、特に一部の Web サイト ファイル (js、html、css、img) にアクセスできます。つまり、IP はコンピュータであり、要求は実際には別のコンピュータ上のファイルにアクセスすることです。

次に、サーバーについて説明します。一般的に使用されるものには、Apache と nginx が含まれます。サーバーは、インターネットからのリクエストを常に監視し、リクエストに応じて対応するコンテンツを返します。先ほど説明したファイルと同じように、これらはすべてサーバーにリクエストを作成してからそれを返すことを望んでおり、返された HTML、CSS、および JavaScript は解析のためにブラウザーに渡され、表示されるのはそのコンテンツです。ご覧のウェブページ。

php とデータベースについてはどうですか?上記のものは単なる静的ファイルであり、サーバーと動的にやり取りしたい場合は、スクリプト言語を使用する必要があります。現在、より一般的な言語は php、.net、jsp であり、多くは CGI を使用します。サーバー側のスクリプト ファイル (例: t.cn/login.php) にアクセスして、スクリプトは、サーバーのローカル リソース、データベースなどにアクセスする権限を持っています。要求した内容に従って、スクリプトが解析されてサーバーに返され、サーバーはスクリプトをユーザーに返します。

データベースは主に、検索、挿入、クエリ、削除などの操作を容易にするためにデータを動的に保存するために使用されます。 MySQL、Oracle、SQL Server、および一部の NoSQL 製品はデータベースです。

xml は主に、構成情報とデータのデータ交換と保管に使用されます。これらも通常のファイルですが、独自の書き込み仕様とコンテンツ解析用の完全な解析エンジン セットを持っています。スクリプト言語、つまり C++、Java は XML ファイルを操作できます。

dom はノードと呼ばれます。これは、xml にはタグが付けられていないため、xml の概念であり、html はそのブランチであり、より具体的なフィールドで使用されます。 Web ページを開き、右クリックして選択します。ソース コードを表示すると、各コンテンツ ポイントにインデックスを付けるために、ノード (dom) の概念が導入され、dom の段階的な検索を通じて、xml 要素をすばやく見つけることができます。元の投稿者に戻る:
もっと人気のあるものはありますか? : WinIISPHPmysqlIE を例に挙げます
1 Xiao Ming がコンピュータの電源を入れます
2 ブラウザを実行します
3 Web サイトを開きます zhihu.com/
4 Xiao Ming のコンピュータは、DNS を通じてこの URL が指す IP アドレスを検索します
5 ブラウザはこの IP アドレスに訪問を送信します zhihu.com
6zhihu.com のリクエストを受信すると、Webサーバー ソフトウェアは、サイト バインドがあるかどうかを問い合わせます。このドメイン名
7 バインドされていない場合は、エラー コードまたはデフォルト サイト (設定が許可されている場合) を返します。バインドされている場合は、No.8
8 zhihu.com この URL はディレクトリであり、ファイルではありません。Web サーバー ソフトウェアは、index.php
9 などのデフォルト ファイルをクエリして設定します。サーバーはファイルの種類と対応するインタープリタを判断し、それが php.exe (php-cgi.exe) であるかどうかを通知します。「お兄さん、外国人からの手紙があれば、それを翻訳してください。」 php ファイル内の php フランス語を解釈します (データベース接続情報とデータベース クエリ情報がある場合は、対応するリンクを経由します。ドライバーは、他のデータベース兄弟がクエリを実行して結果を取得し、結果を PHP に返すことをドライバーに通知します)。 PHP は PHP 構文を説明し、その結果を IIS に渡します。IIS が PHP の忙しい作業を完了するのを待った後、これらの 3 つのクライアント ブラウザーが PHP 変換フラグメントを使用してコンパイルし、IIS に返します。クライアント
10.No.6-9 のとき、Xiaoming のブラウザは待機中です。つまり、ブラウザのステータス: 「サイトを探しています」、「サイトにリンクしています」、「すでに Web サイトを見つけて応答を待っています」 、「データのダウンロード」、「解析、レンダリング、実行、出力の印刷」...
11. この時点で、Xiao Ming は zhihu .com
は秦明源に次のように返信しました:
テクノロジーがどれほど進歩しても、それを人々がより利用しやすくなる可能性はあります
それを変えることができるかどうか
変える必要があるかどうかは別問題です(意味がない!)
この質問は肉を食べるのと同じで、まず動物の生活パターン、思考、感情を理解する必要があります。 ..やりますか?あなたが動物ではなくコンピュータだけに興味がある場合、動物に興味がある人はどうすればよいでしょうか?

動物以外の技術的な問題のすべての側面に対処できる人はいません。天文学と地理を上から真に理解し、地理を下から理解し、人間性を理解し、陰と陽を理解し、八卦を理解し、奇妙な宗派を知り、曇家を理解し、何千マイルも離れたところから戦略を立てて勝つことができる人...中国の5000年。しかし、諸葛孔明という人物が一人います

また、彼が人民に親しくないのではなく、人民に近いものが多すぎるのです。本当に興味があるのなら、学んで習得するには必要なリソースが世界に多すぎることに気づきました。テクノロジーのせいにしないでください。人々に寄り添う方法をまだ学んでいないだけです。
同時に、技術的(科学的)知識は、人文的知識や民俗的習慣とは異なり、ある程度の真剣さと厳格さを持たなければなりません

最後に、ヨーロッパとアメリカの国々はテクノロジーに対する理解を深めています。私たちの国よりも、ヨーロッパやアメリカの大学のウェブサイトにある公開情報やオープンコースを利用して、興味のあるものを見つけることができます。 サーバーとクライアント: これは最初に理解する必要がある概念です。現在表示されている Zhihu の Web サイトでは、コードとデータがサーバーに配置され、クライアントではブラウザー (IE、おそらく Firefox) が使用されます。 、たぶん、チョメ、要するに、それらはすべてブラウザです。ブラウザの機能は、サーバーにリクエストを送信し、リクエストの結果(応答)を受け取ることです。たとえば、Web サイト上のリンクやボタンをクリックすると、たとえば、Weibo を投稿する場合、サーバーに Weibo データを追加するだけです。追加されたコンテンツは、サーバーから要求されたものです。 。
php: サーバーはリクエストを受信した後、そのリクエストを理解して解析し、アクションを開始する必要があります。これらは、php コード、asp コードなどのコードです。サーバーには 23 種類の言語があり、これらの言語は、リクエストを行うと、対応するアプリケーション サーバー ソフトウェアによって認識され、リクエストが実行されます。そして、いくつかの画像、いくつかの HTML ファイル、CSS ファイル、および JavaScript スクリプトを返します。つまり、Web ページに必要なファイルがクライアントに返されると言えます。たとえば、前のリクエスト: Weibo データを Weibo データベースに追加する この時点で、サーバーはデータベースを操作し、データベースにレコードを追加する必要があります。それが成功すると、操作が完了したことを示す結果が返されます。成功した、など
html、css: リクエスト結果がクライアントに返された後、これらのファイルを理解して解析できるのはブラウザだけであり、ブラウザは主に Web ページ内のコンテンツを参照してそれらを組み立て、CSS がコンテンツを変更します。テキストや画像など、一部の Web ページの植字、テキスト サイズ、背景色、動的効果は、返された js によって制御されます。このとき、サーバーから返された結果の内容を直感的に読み取ることができます。
javascript: 必ずしもすべてをサーバーにアクセスできるわけではなく、サーバー側も面倒に感じることがあります。このとき、JavaScript はブラウザーによって実行されるクライアント側のスクリプト コードです。つまり、神はあなたのために小さなことをすべてすぐにやってくれるので、サーバーにわざわざ行く必要はありません。たとえば、パスワードを入力すると、パスワードの形式が正しくない場合があります。入力して送信すると、js スクリプトが停止し、資格があるかどうかがサーバーに送信されます。資格がない場合は、資格がないことを通知するために直接電話をかけ直します。 js でできることはたくさんあり、Web ページを動的にします。
データベース: データベースはアーカイブとみなすことができます。すべてのデータはデータ サーバーのハードディスク内に整理され、データベース ソフトウェアにはアクセス、保存、削除を担当する多忙なファイル管理者もいます。データへのアクセス、保存、削除を担当する者もいます。バックアップやデータのセキュリティなどを担当します。サーバーなどの外部ソフトウェアは、追加、削除、変更、読み取りなどの「インターフェイス」チャネルを通じてデータベース上で一部のデータ操作を実行します。
xml: データには物理的な形式があります。これは、データが特定の構造で編成されていることを意味します。たとえば、コンピューターの世界の本質はデータの物理的な形式と見なすことができます。あらゆる種類のデータの構造と形式。データ形式 xml の利点は、第一に、多くのソフトウェアが認識すること、オープン形式であり、さまざまなソフトウェアとのデータ通信に XML を使用できること、第二に、読みやすく人間に適合することです。要件 読書習慣。プログラミング言語で直接操作することができ、比較的簡単にソフトウェアの設定ファイルとして使用されます。
DOM ノード: XML などのデータの組織形式であり、XML データはノード内にネストされたノードごとに形成されます。なぜノードがそれほど重要なのかというと、Web の基本的な HTML も偽装された XML データ形式だからです。
それらの多くはまだ厳密さが足りず、ばかげています。 これが Web サイトの仕組みです:

ユーザーのブラウザ (クライアント) はネットワーク (プロトコル) 経由で Web サイト サーバーにリクエストを送信し、サーバーはユーザーのリクエスト (およびコンテンツはネットワーク (プロトコル) を介してブラウザに送り返され、ブラウザはサーバーから送信された Web ページ (HTML 形式) を解釈、実行し、レンダリングします。エンド ユーザーには Web が表示されます。ページは次のようになります。

ネットワークプロトコル: http

クライアント: html (dom)、css、javascript、xml

サーバー: データベース、http-server Long Chengliang は Web サイト プログラムの基本原理を非常によく説明しています

ここで付け加えておきますが、私の理解によれば、簡単に言うと、Web サイト = サーバー + ドメイン名 + Web サイト プログラムとリソースです。
Web サイトを構築するには、上記の 3 つの部分を準備する必要があります。
  1. サーバーは、Web サイトのプログラムを保存し、Web サイトのプログラムを正常に実行できるようにするために使用されます。インターネットに接続されているコンピュータ。通常、このコンピュータの IP は固定されています (もちろん、動的 IP をサーバーとして使用できるソフトウェアもありますが、ここでは説明しません)。インターネット上の他のユーザーがサーバーのリソースを正確に見つけることができます。
  2. ドメイン名。IP は覚えにくいため、ドメイン名を使用してサーバー IP を解決し、ポイントし、ドメイン名をサーバーにバインドします。これにより、サーバー上のリソースにアクセスできるようになります。覚えやすいドメイン名をドメイン名レジストラ Web サイトに登録して使用できます。たとえば、zhihu.com は、ドメイン名レジストラ godaddy に登録されています。 comに登録しました。
  3. Web サイト プログラムは、Web サイトの機能を実装するために必要なプログラムとリソースの集合であり、Web サイトのプログラムとリソースはサーバーのハード ドライブに保存されます。

例: たとえば、Web サイト zhihu.com を構築するには、次の手順が必要です。
  1. サーバーを購入し (小規模な Web サイトには仮想ホストまたは VPS を使用することもできます)、サーバー情報を構成します。
  2. Web サイト プログラムを開発し、Web サイト プログラムを
  3. ドメイン名登録業者の Web サイトにアクセスして登録しますzhihu.comこのドメイン名 (ドメイン名が他の人によって登録されている場合、そして本当にそれが必要な場合は、ドメイン名所有者に連絡してお金で購入することができます)、ドメイン名をサーバー IP に解決します。OK、次のように zhihu.com Web サイトが設定されました。次のステップは、それを宣伝し、運営することです。


補足すると、国内サーバーを使用している場合は、アクセスする前にドメイン名を登録する必要があります。別の口論: 現在の Web サイト登録システムは非常にイライラさせられ、異常です。 確かに、たくさんの疑問があります。ネットでたくさんの情報を調べました。しかし、多くの問題はまだ半分理解されています。
たとえば、コンピューターの仕組み。人を理解させることができる人はまだいます。
どんなに進歩したテクノロジーであっても、それを卑下するのではなく「人に優しい」ものであるべきだと思います。中国語版アドレス:
>html5rocks.com/zh/tutor

英語版アドレス:
>taligarsiel.com/Project 実際、これは問題にはならないはずですが、もうすべてを学び、それを分類する方法がわからないということはありませんか。それとも学習を始める準備はできていますか?
HTML、CSS、JS はクライアントで実行され、PHP はサーバーで解釈されて実行されます。これは、ブラウザーを使用してリクエストを送信するたびに、指定されたサーバーが応答して PHP に引き渡すのと同じです。 HTML、CSS、その他のファイル (画像、JS ファイルなどを含む) を取得する処理を行うため、クライアントはこれらのバイナリ ファイルをダウンロードします。
このプロセスでは、PHP が処理後にデータを返すポイントを分水界として使用する必要があります。フロントエンドとバックエンドは独立して動作します~

必ずしも正しいわけではありませんが、ほぼその通りです(笑) Web サイトの動作原理についての質問ですので、PHP を例にして、最も人気のある動的 Web サイトの動作原理を説明します。写真をよく見てください。

ウェブサイトがどのように機能するかを簡単に説明できる人はいますか?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。