什么是Web服务器,Web服务器是如何工作的?
1989年,第一个被称为CERN httpd的网络服务器被创建用于交换信息和一个名为WorldWideWeb的浏览器。到1990年底,第一个网页在开放的互联网上提供,1991年,CERN以外的人被邀请加入这个新的网络社区。
随着人们开始意识到通过现在的互联网传输数据的有效性,多种操作系统开始发展,所有人都可以使用计算机交换数据。
如果你运行一个网站,了解什么是网络服务器、它的功能以及它在向网站访问者提供网站内容方面的作用是至关重要的。
什么是Web服务器?
许多人熟悉如何查看和导航网页,但对这些网页的功能了解有限。因此,我们将在这里回答这个问题:“什么是网络服务器?”
在软件方面,网络服务器是使用超文本传输协议(通常称为HTTP)来存储、处理网页并将其传递给用户的计算机软件。
这些网页主要是静态内容,如HTML文档、图像、视频、样式表等。
在硬件方面,网络服务器是存储网络服务器软件和网站文件的计算机。
网站是网页的集合。
为了让网站对每个人都可用,它需要存储或“托管”在连接到互联网的计算机上。这样的计算机被称为网络服务器。
因此,术语“网络服务器”指的是硬件和软件,但通常仅指机器中提供网站功能的HTTP服务器软件。
简单地说,web服务器的主要工作是通过存储、处理网页并将其传递给用户来显示网站内容。
服务器通常在两个操作系统上运行,Linux或Microsoft Windows。最流行的运行web服务器的操作系统是Linux,大多数托管公司都这样做。
许多网络服务器程序都可用,但Nginx和Apache无疑是当今互联网上使用最多的两个网络服务器。它们共同负责为互联网上超过60%的流量提供服务。
相关:Apache与Nginx:您应该选择哪个Web服务器
Web服务器是如何工作的?
为什么理解问题的答案很重要?因为网站的成功不仅取决于其内容和功能,还取决于为其提供动力的网络服务器的效率。
当某人坐在电脑前输入一个地址(URL)时,如
www.google.com
进入网络浏览器,比如微软Edge或谷歌Chrome,浏览器会向互联网发送一个请求,要求查看在该地址找到的网页。
当浏览器通过web服务器请求页面时,该过程需要经过许多步骤。
首先,DNS(域名服务器)将此地址转换为IP地址。然后,一旦浏览器识别出托管所请求URL的服务器的IP地址,它就会向其发送HTTP请求。
最后,网络服务器从磁盘加载网站文件,并通过网络将其发送到用户的浏览器。
互联网上的所有网站都有一个唯一的IP地址标识符。此外,互联网上的每个网页都有一个单独的地址,称为统一资源定位器或URL。
网络服务器使用超文本传输协议(HTTP)与网络浏览器进行通信。超文本传输协议是用于在网络上传输文件的一组规则。web服务器了解URL和HTTP。
整个交换是通过浏览器和服务器使用HTTP相互通信来实现的。一般来说,整个过程发生得如此之快,以至于当用户从一页导航到另一页时,几乎看不到。
此工作流程如下图所示。
简而言之,客户端设备向服务器发送加载网页所需资源的请求。
网络服务器是响应这些请求并将网站内容传递给用户的程序或计算机。
网络服务器可以使用相同的软件和硬件资源托管单个网站或多个网站,称为“虚拟托管”
静态和动态内容
粗略地说,服务器可以提供静态或动态内容。
在网络的早期,几乎所有的网站都被称为“静态网站”。内容(文本、图像、音频、视频等)都被放置或嵌入到一个简单的HTML文件中。
当Web服务器接收到对
静态页面
,服务器读取请求,在磁盘上找到文件,并将其发送到请求浏览器,如下图所示。
但是,当web服务器接收到对
动态页面
,它的反应不同。首先,它将页面传递给负责完成页面的特定软件。这种特定的软件被称为应用程序服务器。
然后,应用程序服务器扫描页面以获取指令并完成页面,然后将完成的页面传回Web服务器。
相关:如何通过PHP-FPM配置Nginx以使用PHP
动态页面是指根据用户的行为、偏好和兴趣而更改的网络内容。提供的内容是按需动态生成的。
动态页面是用Java、PHP、Python等编程语言编写的。
让我给你举个例子。如果您有一个基于Java的web应用程序,您将需要能够使用Java代码的专用软件;最广泛使用的是Apache Tomcat,一种Java应用程序服务器。
当用户发送请求时,前端web服务器(例如Nginx)会满足请求。然而,由于前端web服务器不理解Java,它将请求的页面转发给Tomcat应用服务器,Tomcat应用服务器根据请求页面中的Java代码执行必要的操作,并将格式化为纯HTML页面的完成响应返回给前端web服务器。结果,它将已经完成的页面返回给客户端。
此工作流程如下图所示。
换句话说,应用程序服务器扩展了web服务器处理web应用程序请求等的能力。
结论
现在您知道什么是web服务器以及它是如何工作的。从本质上讲,请求响应是服务器日常工作的关键。
每当你打开一个新的网站页面或进行一些在线购物时,某个地方的服务器上都会发生一系列近乎即时的过程。
如果您想分享有关上述主题的更多信息,请随时发表评论。
延伸阅读:
Windows 记事本终于获得自动更正和拼写检查功能
在首次引入 Windows 大约 41 年后,记事本终于更新了自动更正和拼写检查功能。这家科技巨头于今年 3 月推出了拼...
Ubuntu 的 apt 和 apt-get 命令有什么区别?
在Ubuntu及其他基于Debian的Linux发行版中,软件包管理是系统维护的一个重要方面。apt和apt-get是两...
Ubuntu远程桌面:如何设置和连接
远程桌面是一种允许您远程接管和使用另一台计算机的服务。在Ubuntu中,可以在图形客户端机器上启用它来控制主机。此功能对...
苹果公司在“放开”iPad活动上宣布的4款产品(以及你错过了什么)
利用当天的视频 苹果2024年5月的“放开”活动标志着iPad系列的一个重要里程碑,该公司推出了自成立以来最重大的升级。...
将照片从iPhone传输到iPhone的8种快速方法
已升级到新iPhone,是否要从旧设备中移动所有照片?或者你只是想从别人的iPhone上转移照片?以下是在两部iPhon...