网页工作原理

自从Internet诞生以来,其发展速度之迅猛前所未有,越来越多的公司或者个人都在网络上建立了自己的网页和站点,而且在可预见的未来里,将会有更多的人利用网络来开展自己的工作甚至改变自己的生活。虽然有如此之多的人每天都在浏览网页,或者设计网页,但是网页是如何显示在浏览器上的?是通过什么原理进行工作的?能回答这两个问题的人却并不多。下面说一说几种常见的网址输入格式不同的网页的基本原理。

一、标准网址:域名+目录+文件名称

例如:http://www.webdesign.com/web/principle.html

其中,

www.webdesign.com为计算机域名;

web为计算机根目录下的一目录;

principle.html为该目录下一具体文件。

对于一般的html文件,Web服务器会直接把文件传回给浏览器。标准的网址书写格式让浏览器与Web服务器之间只有文件传输的关系。具体通信过程如下:

1. 浏览器首先通过www.webdesign.com域名来定位Web服务器,取得联系,并建立信息传输通道使信息准确传输;

2. 信息通道建立好后,浏览器会向Web服务器发起下载web目录下的principle.html文件;

3. 文件下载成功后浏览器便会解释执行principle.html文件中的html标记,如果有图像,则下载图像文件,然后一起显示在浏览器窗口上。

二、域名+目录

若浏览器查询的是目录,则Web服务器会判断这个目录是否含有默认文件,如果有,会将默认文件传给浏览器,没有则把目录的文件列表传给浏览器。如http://www.webdesign.com/web和http://www.webdesign.com/computer,这两个网址从表面上看都由域名和目录 组成,web的子目录下放置有默认文件Index.html, computer目录下未放置默认文件。在浏览器地址框里输入第一个网址,一旦连接成功,服 务器便把默认文件传回到浏览器端,最后解释执行该文件;输入第二个网址,返回的则是该目录下的文件列表, 这与FTP有点类似。

如果服务器端不允许浏览器 访问文件目录,浏览器端将会显示提示信息“不允许访问文件列表”,表明服务器端的一些设置要求必须明确指定要下载的具体文件名,如果浏览器没有找到要找的 文件,则不允许下载其他文件或子目录。

三、只有域名

此格式应用最多,当我们把上述的网址 输进浏览器地址框执行时,浏览器首先与计算机服务器取得联系并建立通信信道,然后就向服务器发出要下载该网站网页的请求。由于没有明确下载文件具体名称, 服务器就默认下载文件为服务器根目录下的文件Index.html。因此一旦收到下载请求,服务器就自动把该文件传回到浏览器端。最后浏览器启动解释执行 功能来解释运行Index.html文件,并把最后的执行结果显示在用户的面前。

四、带程序的网址

若浏览器要下载的是扩展名为ASP或CGI的脚本程序,那么Web服务器会自动启动解释程序,然后把程序执行的结果传回给浏览器。例如   http://www.webdesign.com/test.asp,结尾并不是以.html为扩展名,而是以.asp为扩展名,test.asp 为可执行程序,浏览器不能对它进行解释,所以只能先在服务器上解释运行,如果程序中带有参数,如http:// www.webdesign.com /test.asp?NAME=ZYS&AGE=21 (NAME和AGE为参数),则在执行过程用到这两个参数,然后服务器将运行结果传回给浏览器。如 在结果中遇到html标记,浏览器就启动解释程序,然后按html标记的要求把网页的内容显示在用户面前。

Need a translation service?

Please enter your personal details and we will contact you shortly

Words translated by CCJK

146,096,379

Our Client Satisfaction

Rating for previous quarterr

4.00

Over 95% of our clients recommend our language services to others

Copyright © CCJK Technologies Co., Ltd. 2000-2019. All rights reserved.
NULL array(37) { ["SERVER_SOFTWARE"]=> string(12) "nginx/1.12.2" ["REQUEST_URI"]=> string(56) "/%E7%BD%91%E9%A1%B5%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86/" ["USER"]=> string(5) "nginx" ["HOME"]=> string(14) "/var/lib/nginx" ["HTTP_ACCEPT_ENCODING"]=> string(4) "gzip" ["HTTP_IF_MODIFIED_SINCE"]=> string(30) "Tue, 25 Jun 2019 19:49:49 KRAT" ["HTTP_ACCEPT_LANGUAGE"]=> string(14) "en-US,en;q=0.5" ["HTTP_ACCEPT"]=> string(63) "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" ["HTTP_USER_AGENT"]=> string(40) "CCBot/2.0 (https://commoncrawl.org/faq/)" ["HTTP_X_AMZN_TRACE_ID"]=> string(40) "Root=1-5d81c4c0-f2180821dc450e6dadfead7e" ["HTTP_HOST"]=> string(12) "www.ccjk.com" ["HTTP_X_FORWARDED_PORT"]=> string(3) "443" ["HTTP_X_FORWARDED_PROTO"]=> string(5) "https" ["HTTP_X_FORWARDED_FOR"]=> string(9) "3.80.4.76" ["PATH_INFO"]=> string(0) "" ["REDIRECT_STATUS"]=> string(3) "200" ["SERVER_NAME"]=> string(8) "ccjk.com" ["SERVER_PORT"]=> string(2) "80" ["SERVER_ADDR"]=> string(14) "192.168.200.17" ["REMOTE_PORT"]=> string(5) "12930" ["REMOTE_ADDR"]=> string(14) "192.168.100.22" ["GATEWAY_INTERFACE"]=> string(7) "CGI/1.1" ["REQUEST_SCHEME"]=> string(4) "http" ["SERVER_PROTOCOL"]=> string(8) "HTTP/1.1" ["DOCUMENT_ROOT"]=> string(30) "/usr/share/nginx/html/ccjk.com" ["DOCUMENT_URI"]=> string(10) "/index.php" ["SCRIPT_NAME"]=> string(10) "/index.php" ["CONTENT_LENGTH"]=> string(0) "" ["CONTENT_TYPE"]=> string(0) "" ["REQUEST_METHOD"]=> string(3) "GET" ["QUERY_STRING"]=> string(58) "q=/%E7%BD%91%E9%A1%B5%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86/" ["SCRIPT_FILENAME"]=> string(40) "/usr/share/nginx/html/ccjk.com/index.php" ["FCGI_ROLE"]=> string(9) "RESPONDER" ["PHP_SELF"]=> string(10) "/index.php" ["REQUEST_TIME_FLOAT"]=> string(15) "1568785600.2238" ["REQUEST_TIME"]=> string(10) "1568785600" ["HTTPS"]=> string(2) "on" } string(2) "1-" string(2) "2-" TOP