三、PHP-CGI: 是php提供给web serve也就是http前端服务器的cgi协议 接口程序,当每次接到http前端服务器的请求都会开启一个PHP-CGI进程进行处理,而且开启的PHP-CGI的过程中会先要重载配置,数据结构以及初始化运行环境,如果更新了PHP配置,那么就需要重启PHP-CGI才能生效,例如phpstudy就是这种情况。 CGI是一个协议,PH...
Nginx 0.8.46+PHP 5.2.14(FastCGI)服务器在3万并发连接下,开启的10个Nginx进程消耗150M内存(15M*10=150M),开启的64个php- cgi进程消耗1280M内存(20M*64=1280M),加上系统自身消耗的内存,总共消耗不到2GB内存。如果服务器内存较小,完全可以只开启25 个php-cgi进程,这样php-cgi消耗的总内存数才500M。 上面的...
编译PHP和PHP-CGI的区别 在配置PHP的时候,如果加上了下面这个配置的话,就变成了PHP --with-apxs2=/data/apache2/bin/apxs 但是不会支持PHP-CGI,无论你用--enable-fastcgi或是其他,都不行。 本来我的需求是编译CGI,但是同样支持原有的PHP功能,但是鱼和熊掌不可兼得这个道理给忘记了,这个问题也困惑了我很久,...
FastCGI是一个可伸缩地、高速地在HTTP server和动态脚本语言间通信的接口。多数流行的HTTP server都支持FastCGI,包括Apache、Nginx和lighttpd等,同时,FastCGI也被许多脚本语言所支持,其中就有PHP。 FastCGI是从CGI发展改进而来的。传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序时都需要重新启动脚本解...
php-cgi:是一个实现了CGI协议的程序,用来解释PHP脚本的程序。 PHP-FPM : 是一个实现了Fastcgi协议的程序,被PHP官方收了。 php-cgi只是个CGI程序,他自己本身只能解析请求,返回结果,不会进程管理,所以就出现了一些能够调度php-cgi进程的程序,比如说由lighthttpd分离出来的spawn-fcgi。好了PHP-FPM(实际管理对象是php...
php-fpm是php提供给web serve也就是http前端服务器的fastcgi协议接口程序,它不会像php-cgi一样每次连接都会重新开启一个进程,处理完请求又关闭这个进程,而是允许一个进程对多个连接进行处理,而不会立即关闭这个进程,而是会接着处理下一个连接。它可以说是php-cgi的一个管理程序,是对php-cgi的改进。
CGI全称是“通用网关接口”(Common Gateway Interface),它可以让一个客户端,从网页浏览器向执行在Web服务器上的程序请求数据。 CGI描述了客户端和这个程序之间传输数据的一种标准。 CGI的一个目的是要独立于任何语言的,所以CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。 如php,perl,tcl等。
php.exe(linux下是php/bin/php)是提供来在命令行(命令行解释器)执行PHP文件的工具,比如你在有文件abc.php,那么你可以在CMD命令提示符下执行命令php.exe abc.php来运行这个PHP文件。 php-cgi.exe(linux下是php/bin/php-cgi)是提供来作为cgi(cgi解释器)使用的,区别是在文件输出所有内容之前,会自动输出一个下面...
还有的说PHP-CGI是PHP自带的FastCGI管理器,那这样的话干吗又弄个php-fpm 不对。php-cgi只是解释PHP脚本的程序而已。 二、白话解释 你(PHP)去和爱斯基摩人(web服务器,如Apache、Nginx)谈生意你说中文(PHP代码),他说爱斯基摩语(C代码),互相听不懂,怎么办?那就都把各自说的话转换成英语(FastCGI协议)吧。
4、所以现在的php-fpm跟php和php-cgi都能解释php代码,只不过,php(强调一下这是可执行文件,在win下...