lamp原理讲解

LAMP:提到LAMP很多人会认为LAMP是Linux ,Apache,Mysql,PHP。但是随着技术的不断发展,当今的Lamp,已经不仅仅是这么简单了,这里我们的P除了PHP其实还包括:phython,perl    .而M也不仅仅指的是mysql,也包括mariadb.

    LAMP平台顾名思义就是Linux,apache,mysql(mariadb),php(phython,perl)的结合。按照他们的结合方式不同,大致可以分成三类:

        php 以模块的形式结合apache 和 mysql

        php 以cgi的形式结合 apache 和 mysql

        php 以fastcgi的形式结合apache 和 mysql。

    网页资源的动态和静态

    静态内容服务:客户端发起资源请求,服务器将请求的资源原封不动的发给客户端。动态资源:服务器将客户端发起的资源先执行一下,进行一定的处理,返还给客户端。


 LAMP是一个多C/S架构的平台,最初级为web客户端基于TCP/IP通过http协议发起传送,这个请求可能是动态的,也可能是静态的。所以web服务器通过发起请求的后缀来判断,如果是静态的资源就由web服务器自行处理,然后将资源发给客户端。如果是动态这时web服务器会通过CGI(Common Gateway interface)协议发起给php。这里但是如果php是以模块形式与Web服务器联系。那么他们是通过内部共享内存的方式。如果是php单独的放置与一台服务器,那么他们是通过sockets套接字监听的方式通信(这又是一个C/S架构)。这时php会相应的执行一段程序,如果在执行程序时,需要用到数据。那么php就会通过mysql协议发送给mysql服务器(也可以看作是一个C/S架构)。由mysql服务器处理,将数据供给php程序。大概流程如图:







你可能感兴趣的:(php)