关于“php_apache原理”的问题,小编就整理了【4】个相关介绍“php_apache原理”的解答:
php工作原理?PHP的工作原理
PHP的所有应用程序都是通过WEB服务器(如IIS或Apache)和PHP引擎程序解释执行完成的,工作过程:
(1)当用户在浏览器地址中输入要访问的PHP页面文件名,然后回车就会触发这个PHP请求,并将请求传送化支持PHP的WEB服务器。
(2)WEB服务器接受这个请求,并根据其后缀进行判断如果是一个PHP请求,WEB服务器从硬盘或内存中取出用户要访问的PHP应用程序,并将其发送给PHP引擎程序。
(3)PHP引擎程序将会对WEB服务器传送过来的文件从头到尾进行扫描并根据命令从后台读取,处理数据,并动态地生成相应的HTML页面。
(4)PHP引擎将生成HTML页面返回给WEB服务器。WEB服务器再将HTML页面返回给客户端浏览器。
PHP程序工作原理?把php最终集成到Apache系统中,还需要对Apache进行一些必要的设置。这里,我们就以php的mod_php5 SAPI运行模式为例进行讲解,至于SAPI这个概念后面我们还会详细讲解。
假定我们安装的版本是Apache2 和 Php5,那么需要编辑Apache的主配置文件http.conf,在其中加入下面的几行内容:
Unix/Linux环境下:
LoadModule php5_module modules/mod_php5.so
AddType application/x-httpd-php .php
注:其中modules/mod_php5.so 是X系统环境下mod_php5.so文件的安装位置。
Windows环境下:
LoadModule php5_module d:/php/php5apache2.dll
AddType application/x-httpd-php .php
注:其中d:/php/php5apache2.dll 是在Windows环境下php5apache2.dll文件的安装位置。
这两项配置就是告诉Apache Server,以后收到的Url用户请求,凡是以php作为后缀,就需要调用php5_module模块(mod_php5.so/ php5apache2.dll)进行处理。
apache工作原理?工作原理: 一个单独的控制进程(父进程)负责产生子进程(单一线程的子进程),这些子进程用于监听请求并作出应答。
Apache总是试图保持一些备用的 (spare或是空闲的子进程用于迎接即将到来的请求。这样客户端就无需在得到服务前等候子进程的产生。
在Unix系统中,父进程通常以root身份运行以便邦定80端口,而 Apache产生的子进程通常以一个低特权的用户运行。
User和Group指令用于配置子进程的低特权用户。
运行子进程的用户必须要对他所服务的内容有读取的权限,但是对服务内容之外的其他资源必须拥有尽可能少的权限。
php+apache和php+nginx的区别?apache是通过mod_php来解析phpnginx是通过php-fpm(fast-cgi)来解析php1.PHP解释器是否嵌入Web服务器进程内部执行mod_php通过嵌入PHP解释器到Apache进程中,只能与Apache配合使用,而cgi和fast-cgi以独立的进程的形式出现,只要对应的Web服务器实现cgi或者fast-cgi协议,就能够处理PHP请求。
mod_php这种嵌入的方式最大的弊端就是内存占用大,不论是否用到PHP解释器都会将其加载到内存中,典型的就是处理CSS、JS之类的静态文件是完全没有必要加载解释器。我还是比较推荐你去后盾人上面看看里面有很多关于这类php之类的教学讲解视频哦你可以去看看
到此,以上就是小编对于“php_apache原理”的问题就介绍到这了,希望介绍关于“php_apache原理”的【4】点解答对大家有用。