apache和php怎么进行通信
很多初级工程师都会对这一块的知识比较的迷茫,因为这些同学做的工作一般来说自己的职责或者说项目都涉及不到太多架构的东西,但是学一个东西我觉得是要做到知其然而又所以然,才能不断拓展自己在这一领域的深度与广度,今天来做一个系统的说明。
php与apache的主要通信方式就分为了如下的三种方式
cgi模式
我们先来通俗的解释一下什么是cgi?
首先cgi是一种规范,汉化的解释为通用的网关接口,其实就是web服务器与php之间的一个翻译机,当web服务器接收到一个请求过来的时候,如果你是用的这种方式,因为浏览器是只能识别html或者其他静态信息的,所以cgi就会给你做出php代码的转换
那具体的在apache里应该怎么来配置呢?
# 对 PHP 5 用这行 Action application/x-httpd-php “/php/php-cgi.exe”
模块化方式
模块化方式通俗解释:
在模块化(DLL)中,PHP是与Web服务器一起启动并运行的,再通俗点说两者是同一个进程的方式在运行。
那么具体怎么配置呢?
# 对 PHP 5 用这两行: LoadModule php5_module “c:/php/php5apache2.dll” AddType application/x-httpd-php .php # 配置 php.ini 的路径 PHPIniDir “C:/php”
fastcgi
通俗解释:
说白点fastcgi也是一种协议,它是一个cgi的管理者,那么它的具体实现到php中就是php的php-fpm模块,但是在apache中是用的专门的fastcgi模块,需要下载.so文件,php-fpm在php5.3以后不再作为第三方的模块而是集成到了php中,它会提前的开启多个cgi程序,管理这些进程,并提供方式合理有效的调度,保证了并发性,
更多Apache相关技术文章,请访问Apache使用教程栏目进行学习!
以上就是apache和php怎么进行通信的详细内容,更多请关注其它相关文章!