0

0

Web程序工作原理

php中文网

php中文网

发布时间:2016-08-08 09:32:06

|

1011人浏览过

|

来源于php中文网

原创

1.web程序工作原理

(1)Web一词的含义

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

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

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

(2)单机程序工作原理

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

 

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

将单机连成网络,如将AB连成网络,则可以使它们之间提供服务,如AB提供服务。常见的服务是文件共享,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/SB/S服务器的组成

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

 

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

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

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

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

Figstack
Figstack

一个基于 Web 的AI代码伴侣工具,可以帮助跨不同编程语言管理和解释代码。

下载

 

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

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

用户通过浏览器向服务器请求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语言、CSSXML等语言。

3.HTML工作原理

1HTML简介

HTMLHyper Text Markup Language ,超文本标记语言。

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

2HTML工作原理

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

3HTML的基本结构

A.版本声明,即序(Prologue

B.头部(Head

C.主体(Body

以上就介绍了Web程序工作原理,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

1044

2026.02.13

微博网页版主页入口与登录指南_官方网页端快速访问方法
微博网页版主页入口与登录指南_官方网页端快速访问方法

本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。

334

2026.02.13

Flutter跨平台开发与状态管理实战
Flutter跨平台开发与状态管理实战

本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。

213

2026.02.13

TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

35

2026.02.13

Redis高可用架构与分布式缓存实战
Redis高可用架构与分布式缓存实战

本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。

111

2026.02.13

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

77

2026.02.12

雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法
雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法

本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。

17

2026.02.12

豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法
豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法

本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。

813

2026.02.12

PostgreSQL性能优化与索引调优实战
PostgreSQL性能优化与索引调优实战

本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。

97

2026.02.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.4万人学习

AngularJS教程
AngularJS教程

共24课时 | 3.8万人学习

CSS教程
CSS教程

共754课时 | 35.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号