php的SAPI,CLI SAPI,CGI SAPI

简介:

首先一个问题:在命令行下执行:php -r 'echo 12;'

控制台会打印出 12;

这个过程不是很奇妙么,我输入的是shell命令,但是执行的却是php脚本。php脚本执行完成之后的输出还能在控制台输出。

那在这个shell命令(控制台命令)和php中间一定有一种接口,能将shell的参数,代码,等转换成php,然后将php的输出转换成shell的输出。这个接口就叫做SAPI(Server Application Programimg Interface)。它就相当于PHP外部环境的代理器。

那么由于PHP可以应用在终端上,也可以应用在Web服务器中,所以呢,应用在终端上的SAPI就叫做CLI SAPI,应用在Web服务器中的就叫做CGI SAPI。在windows下安装php你会看到两个exe:php.exe和php-cgi.exe这个就对应的是这两种SAPI。再比如,在控制台上使用php -v,你就会发现PHP的版本信息中有个(cli)标示,就代表你这里的php应用程序使用的是cli SAPI。

关于CLI SAPI:手册上有很详细的说明:http://php.net/manual/zh/features.commandline.php



本文转自轩脉刃博客园博客,原文链接:http://www.cnblogs.com/yjf512/p/3482040.html,如需转载请自行联系原作者

相关文章
|
PHP 调度
PHP CGI、FastCGI、PHP-FPM、PHP-CGI 区别
PHP CGI、FastCGI、PHP-FPM、PHP-CGI 区别
196 5
|
PHP 调度
PHP CGI、FastCGI、PHP-FPM、PHP-CGI 区别
PHP CGI、FastCGI、PHP-FPM、PHP-CGI 区别
129 0
|
Shell Linux PHP
PHP CLI的命令行模式的理解
PHP CLI的命令行模式的理解
209 0
|
Shell PHP Windows
php的SAPI,CLI SAPI,CGI SAPI
php的SAPI,CLI SAPI,CGI SAPI
188 0
|
监控 应用服务中间件 PHP
PHP 本身支持 CGI、FastCGI、mod_php、php-fpm的模式区别是什么?底层原理是什么?
PHP 本身支持 CGI、FastCGI、mod_php、php-fpm的模式区别是什么?底层原理是什么?
226 0
|
网络协议 Unix API
CGI和PHP的关系是什么?底层原理是什么?
CGI和PHP的关系是什么?底层原理是什么?
288 0
|
应用服务中间件 PHP nginx
php cli web server with rewrite router
php cli web server with rewrite router
128 0
|
负载均衡 Java 应用服务中间件
[CGI,Nginx,FastCGI,编程语言,服务器端]FastCGI在PHP与Nginx之间的作用介绍
  一:什么是 CGI?   服务器端编程语言如(如php/java)与Web服务器之间传递信息的协议,约定了http头、表单等信息的传递接口;   二:FastCGI 是什么?
183 0
uiz
|
应用服务中间件 PHP nginx
PHP知识笔记:CGI, FastCGI, PHP-CGI, PHP-FPM, Spawn-FCGI区别
PHP知识笔记:CGI, FastCGI, PHP-CGI, PHP-FPM, Spawn-FCGI区别
uiz
2937 0
|
Shell PHP 机器学习/深度学习
PHP CLI模式下的多进程应用
作者: Laruence(   ) 本文地址: http://www.laruence.com/2009/06/11/930.html 转载请注明出处 PHP在很多时候不适合做常驻的SHELL进程, 他没有专门的gc例程, 也没有有效的内存管理途径.
1648 0