什么是lamp架构

小灰灰 2024-03-16 07:36 174阅读 0赞

LAMP架构介绍

LAMP动态网站架构

LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。

1、LAMP分别代表什么?

  • L代表服务器操作系统使用Linux
  • A代表网站服务使用的是Apache软件基金会中的httpd软件
  • M代表网站后台使用的数据库是MySQL数据库
  • P代表网站是使用PHP/Perl/Python等语言开发

30853c3719d0067454a51c95dfecd057.png

2、Apache/MySQL/PHP各自有什么作用?

2.1 Apache(httpd) —–像极了饭店前台

作用:提供web服务,接受用户的连接请求!

注意:Apache或Nginx都只支持静态页面的解析

cb8e7a8c5cf4c4737e0a079601e74dfc.jpeg

当客户端请求的是静态资源时,web服务(httpd程序)会直接返回静态资源给客户端

①静态网页

  • 静态网页指使用HTML(超文本标记语言)编写,一般后缀为.htm,.html等;网页文件中没有程序代码。
  • 静态页面,用户双击打开,看到的效果与web服务器是相同的,因为网页的内容在用户访问之前就已经确定。

②动态网页

  • 动态网页指网站使用特定的编程语言编写,网页文件中除了HTML标记以外,还包括一些实现特定功能的程序代码。
  • 服务端可以根据客户端的不同请求动态产生网页内容。
  • 动态网页后缀一般为.php .asp .aspx .cgi .perl .jsp等
  • 常见的留言板,论坛,注册,发帖都是用动态网页实现的。

③小结提问 1)什么是web服务? 答:提供网页浏览功能的服务。 即安装并启用web服务软件如:httpd/nginx等软件。客户端可以通过浏览器访问网站。

2)什么是web服务器? 答:简单来理解就是安装web服务软件,并能够提供web服务的机器。

3)Web一般是分为客户端与服务器端,两者是如何交互的? 答:通过HTTP协议。例如:http://www.zhoull0801.top/

4)Aapche(httpd)能不能解析动态网页? 答:不能,Apache负责静态页面的解析。

2.2 PHP —–像极了服务生

作用:PHP主要负责PHP脚本程序的解析以及实现与MySQL数据库的交互工作,动态页面中的注册/登陆/下单/支付等大多数功能都是基于PHP+MySQL进行实现。PHP是一种通用开源脚本语言。

e69ef0ff0d511239fed4330c69d53276.jpeg

(1)当客户端请求的是动态资源时,Apache(httpd程序)会调用libphpX.so模块进行相应的解析。

(2)如果解析处理需要用到后台数据库相关数据,此时php程序也会连接后台数据库。

(3) 最终php程序将解析后的结果返回给Apache(httpd程序),让Apache返回给客户端。

2.3 MySQL —–像极了大厨

作用:MySQL是一个关系型数据库管理系统,有瑞典MySQL AB公司开发,目前属于Oracle旗下产品。其主要作用用于永久的存储数据。

8a753cd341ec3e5c8977fb0af6f98ad0.jpeg

LAMP架构是什么? —–像极了饭店

95fbac26f44de32db083785e86ac88cb.jpeg

646c2dea4f4d96b4c7683d194d6b43f6.jpeg

(1) Apache像极了饭店前台,专门用来接受客户请求,并做一些静态页面处理(只买酒水饮料)。

(2) PHP像极了服务生,他专门用来解析处理由前台不能处理的”订单”,如用户想吃一碗意大利面,服务生就需要和后厨沟通,并做相应的安排处理.然后将处理后的结果返回给前台,由前台再给用户,因为服务生太丑了,见不得人。

(3) MySQL像极了后厨,专门用来存放食材,并且只能由中间的服务生和后厨沟通,来获取什么食材。

· 专业解释如下

(1) 客户端发送请求连接web服务器的80端口,由Apache相应并处理用户的静态请求。

(2) 如果客户端请求的是动态资源,由Apache加载调用libphpX.so模块(安装php程序带来)进行解析处理。

(3) 如果处理需要和后台数据库沟通,那么由php程序去完成。

(4) Php程序将处理完后的结果再返回给Apache,由Apache返回给客户端。

发表评论

表情:
评论列表 (有 0 条评论,174人围观)

还没有评论,来说两句吧...

相关阅读

    相关 什么lamp架构

    LAMP架构介绍 LAMP动态网站架构 LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。 1、LAMP分别代表什么? L

    相关 LAMP架构介绍

    一、LAMP架构介绍    现如今打开浏览器,搜索LAMP关键词,出现大量的关于LAMP的介绍,包括LAMP的一键脚本、LAMP的yum安装、LAMP的编译安装,但是对于一个

    相关 Lamp架构应用实践

    (1)Memcached是什么? Memcached是一个开源的,支持高性能,高并发的分布式内存缓存系统,由C语言编写,总共2000多行代码。从软件名称上看,前3个字符“M