search
Homephp教程php手册Web程序工作原理详解,web工作原理详解

Web程序工作原理详解,web工作原理详解

1.Web程序工作原理

(1)Web一词的含义

Network:【计算机】电脑网络,网

Web:【计算机】万维网(WorldWideWeb),互联网(Internet)

Web程序,顾名思义,即工作在Web上的程序。

(2)单机程序工作原理

单机,即不连接到其他计算机的计算机,不在网络中。例如:两单机A、B,只在A上安装有程序X,若要在B上得到X的运行结果,则必须在B上安装一遍X,然后运行。若B类的计算机比较多,则需要逐一安装运行。它们之间不能直接进行通信和协作。如图1所示。

(3)客户机/服务器程序工作原理

将单机连成网络,如将A与B连成网络,则可以使它们之间提供服务,如A向B提供服务。常见的服务是文件共享,FTP文件下载等。我们把提供(响应)服务的计算机称作服务器(Server),接受(请求)服务的计算机称作客户机(Client),也叫工作站(Workstations)。客户机/服务器程序的工作原理如图2所示。

服务器和客户机的角色可以转换。一台计算机,可以对自己提供服务,这时它既是服务器,也是客户机。如,计算机A把自己的文件夹a共享,然后在网络上找到A,则可以下载a,即自己对自己提供了服务,自己请求并响应了服务。

客户机/服务器的这种计算机间的协作方式,称为C/S方式,或C/S架构。

C/S程序分为两部分:服务器端和客户机端,分别称为服务器端程序(或服务程序)和客户端程序(或客户程序)。对于客户端程序,对每一个客户机,也都要分别安装,这一点与单机程序的分发相同,也很麻烦。但是,安装好了客户端程序后,就可以通过通信线路与服务器交互,或通过服务器,与其他客户机通信。典型的例子是大家常用的聊天程序QQ,如图3所示。

(4)浏览器/服务器程序工作原理

若通过客户机中的浏览器(Browser),向服务器发出请求,接收其响应的结果,那么,这时,我们称这样的协作方式为B/S方式,或B/S架构,其工作原理如图4所示:

这时,客户端程序就是浏览器,而浏览器的安装是随着操作系统的安装完成的,不需要用户额外安装。对他们而言,使用B/S程序(如上网看新闻,收发电子邮件),可不需要安装专门的客户端程序,直接在浏览器中操作即可。这使得B/S程序的维护十分方便,因为不用管客户端程序,只要维护好服务器端程序即可。

(5)C/S、B/S服务器的组成

服务器,是担负服务任务的机器。这些服务任务由一般专门的软件来完成。一般地,把具有某种服务功能的服务器软件及其所在的机器,都统称为XX服务器(XX表示某种具体服务)。这些软件可以集中于一台机器中(如图5),这样的机器可以称为集中式服务器;也可以单独存在于某台机器中(如图6),这样的机器可以称为独立式服务器,多个独立式服务器可组成服务器群或矩阵。

按照服务任务,常见的几种服务器软件如表 1 所示。

服务器端脚本:用服务器端编程语言编写的程序。

服务器端编程语言:只运行在服务器端,被服务器所解释和执行的编程语言,如PHP语言。

(6)B/S程序工作的具体过程(如图7)

(7)PHP程序工作的具体过程

具体过程是Apache、PHP、浏览器之间的协作过程:

用户通过浏览器向服务器请求PHP文件(如在地址栏输入:http://localhost/index.php),Apache在服务器上用户文档发布目录下查找浏览器所请求的PHP文件,若找不到,则向浏览器返回错误信息,否则,将其提交给PHP解释器解释执行,PHP解释器对该PHP文件进行语法分析,若发现语法错误,则经Apache返回错误信息(以浏览器能识别的代码表示)到浏览器,否则执行该PHP程序(可能包含对数据库MySQL的操作),将PHP程序执行结果(以浏览器能识别的代码表示)经Apache返回到浏览器,浏览器对返回结果进行解释、执行,执行的结果显示在浏览器窗口中。

如果浏览器所请求的文件不是PHP文件,而是HTML文件或JavaScript文件。该过程将简化:Apache在服务器上用户文档发布目录下查找浏览器所请求的HTML文件或JavaScript文件,若找不到,则向浏览器返回错误信息,否则,将其返回给浏览器,浏览器对返回的结果进行解释、执行,执行的结果显示在浏览器窗口中。

2.浏览器工作过程

(1)Web客户端工作过程

任何应用系统都必须有一个提供用户操作的界面,即用户界面。浏览器的工作,从整个B/S程序来看,是用户与B/S程序打交道的一个界面(接口)。它的任务是:

A.收集用户输入的数据

B.将用户数据发送到服务器

C.接收服务器返回的响应

D.解释,执行这些代码

可见,浏览器扮演的是服务器在用户那里的一个代理(Agent)的角色。这个代理,具有收集消息,请求响应和解释服务器发回的指示的作用。

(2)Web客户端代码

无论是组织用于收集用户数据的界面,还是解释来自服务器的指示形成结果界面,都是用Web客户端代码实现的。常用的Web客户端代码有HTML语言、JavaScript语言、CSS、XML等语言。

3.HTML工作原理

(1)HTML简介

HTML:HyperTextMarkupLanguage,超文本标记语言。

20世纪80年代末,在欧洲粒子物理实验室(CERN:theEuropeanLabloratoryforParticlePhysics)工作的TimBerners-Lee(WWW之父)通过研究发现:人们视觉处理是以页为基础的。于是他得出一个结论:电子资料应以页的方式呈现。以此为出发点,他使用超文本为中心的管理方式来组织网络上的资料,并提出了建立存取与浏览网页的方法:建立了超文本标记语言;设计了超文本传输协议(HTTP:HypertextTransportProtocol),用于获取超链接文件;使用统一资源定位器(URL:UniformResourceLocator)来定位网络文件、站点或服务器。

(2)HTML工作原理

HTML本质上不是程序语言,而是一种标记语言。所谓标记,在有的书上也叫标签,从面向对象的角度而言,就是对浏览器对象的标识的意思。它用来控制文字、图片等浏览器的子对象在浏览器中的表现,以及如何建立文件之间链接的标记。这些标记均放在文本格式的文件中。而程序与之最大的不同,就是可用来控制操作系统或应用程序执行并完成某项作业。超文本标记语言的文档应该尽量做到,从形式上看,无论在任何操作系统的任何浏览器上打开都具有相同的效果。

(3)HTML的基本结构

A.版本声明,即序(Prologue)

B.头部(Head)

C.主体(Body)

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
什么是 Microsoft Teams 中的对讲机及其工作原理?什么是 Microsoft Teams 中的对讲机及其工作原理?Apr 14, 2023 pm 12:31 PM

Microsoft Teams 上的对讲机是什么?顾名思义,新的 Walkie Talkie 功能让 Microsoft Teams 上的用户可以通过使用他们的声音与他们的团队成员进行实时交流,从而与他们联系。在频道中连接到 Walkie Talkie 的用户可以一次听一个即按即说格式的对方讲话。这样一来,只有一个人在说话的时候才能引起注意,而不会被其他人打断。微软将这一功能定

听诊器的工作原理是什么听诊器的工作原理是什么Aug 31, 2023 pm 02:37 PM

听诊器的工作原理是通过声学传感器将人体内部的声音转化成电信号,然后通过耳机或扩音器放大和传输这些信号给医生,它的工作原理基于声学原理,能够帮助医生听到内部声音并进行疾病诊断。听诊器的核心部件是声学传感器,通常由一个共振膜和一个接收器组成,共振膜是一个薄膜,通常由金属或塑料制成,它能够感受到人体内部的声音振动,当共振膜受到声波的作用时,它会产生微小的振动。

vue中keep-alive的工作原理及使用方法详解vue中keep-alive的工作原理及使用方法详解Jul 21, 2023 am 11:58 AM

Vue.js是一个流行的前端框架,提供了一些方便的功能来优化性能和提升开发效率。其中一个功能是keep-alive,它可以帮助我们在组件之间保留状态,从而减少不必要的渲染和请求。本文将详细介绍keep-alive的工作原理以及使用方法,并提供一些代码示例。一、keep-alive的工作原理在Vue.js中,每当我们切换组件时,组件都会被重新创建

深入了解Spring框架的架构与工作原理深入了解Spring框架的架构与工作原理Jan 24, 2024 am 09:41 AM

深入剖析Spring框架的架构与工作原理引言:Spring是Java生态系统中最受欢迎的开源框架之一,它不仅提供了一套强大的容器管理和依赖注入功能,还提供了许多其他功能,如事务管理、AOP、数据访问等。本文将深入剖析Spring框架的架构与工作原理,并通过具体的代码示例来解释相关概念。一、Spring框架的核心概念1.1IoC(控制反转)Spring的核心

计算机按工作原理可分为什么计算机按工作原理可分为什么Dec 07, 2020 am 10:24 AM

计算机按工作原理可分为数字计算机和模拟计算机。数字式电子计算机是当今世界电子计算机行业中的主流,其内部处理的是一种称为符号信号或数字信号的电信号,它有着运算速度快、运算精度高、通用性强等特点。模拟计算机是根据相似原理,用一种连续变化的模拟量作为被运算的对象的计算机;模拟计算机以电子线路构成基本运算部件。

交换机的工作原理是什么交换机的工作原理是什么Dec 26, 2023 am 11:56 AM

交换机的工作原理包括:1、数据帧接收和解析;2、转发表的更新;3、数据帧的转发;4、泛洪处理;5、维护连接。详细介绍:1、数据帧接收和解析,当交换机接收到一个数据帧时,它会首先对数据帧进行解析,提取出其中的源MAC地址和目的MAC地址等信息;2、转发表的更新,交换机内部维护着一个转发表,这个表记录了MAC地址与接口的对应关系;3、数据帧的转发等等。

交换机工作原理是啥交换机工作原理是啥Dec 26, 2023 pm 02:07 PM

交换机的工作原理是基于OSI参考模型的第二层,即数据链路层。交换机是一种基于学习过程的网络设备,它通过解析和转发数据帧来实现网络中不同设备之间的通信。交换机能够不断完善其内部转发表的内容,提高数据交换的效率和可靠性,同时确保连接的稳定性和安全性。交换机广泛应用于企业网络、数据中心和园区网等场景,为各种应用提供稳定、高效的连接服务。

了解Spring拦截器的原理和优点了解Spring拦截器的原理和优点Dec 30, 2023 pm 12:25 PM

探究Spring拦截器的工作原理及优势引言:Spring框架是Java开发中最常用的框架之一,它提供了丰富的功能和灵活性,使得开发者能够更加高效地开发应用程序。其中一个重要的组件就是拦截器(Interceptor)。本文将深入探讨Spring拦截器的工作原理和优势,同时给出具体的代码示例。一、Spring拦截器的工作原理Spring拦截器使用了面向切面编程(

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment