SAPI(Server Application Progromming Interface)
服务器应用程序编程接口,即PHP与其他应用交互的接口,PHP脚本要执行有很多方式,通过Web服务器,或者直接在命令行下,也可以嵌入在其他程序中
常见SAPI有四种:
1.cgi
当一个请求向web server请求动态页时,web server总会fork一个CGI解释器进程进行处理这个请求,进程处理完成之后将结果返回给web server,web server将结果返回并显示出来,进程结束,当用户再次请求同一个页面时,web server总会fork一个进程进行处理,这样效率会比较低下
2.fcgi
fast-CGI是在web server的启动时,载入fast-CGI进程管理器,fast-CGI fork多个CGI解释进程,当fast-CGI接收到一个用户请求时,会随机选择并连接一个CGI解释进程,CGI解释进程接收连接并处理,然后将结果返回给web server,此CGI解释进程工作结束,但web server并不会销毁该进程,而是常驻内存中,此进程则继续等待fast-CGI进程管理器发来的下一个请求,处理请求的效率大大提高。
3.cli:
cli是php的命令行运行模式,大家经常会使用它,但是可能并没有注意到(例如:我们在linux下经常使用 “php -m”查找PHP安装了那些扩展就是PHP命令行运行模式;
4.apache模块的DLL:
在模块化(DLL)中,PHP是与Web服务器一起启动并运行(是apache在CGI的基础上进行的一种扩展,加快PHP的运行效率)
PHP常见的四种运行模式SAPI
最新推荐文章于 2024-05-02 14:26:53 发布