php和cgi之间的区别?
程序员文章站
2022-04-29 17:09:30
...
php的结构很像是网络服务器接收到一个请求,然后调用php这个程序处理php的脚本,和cgi的性质一样,但是为什么,很多人都把cgi作为一个过时的技术,或者说,将php视作与cgi截然不同的一种结构呢?
他们之间是不是真的有什么本质上的区别呢?
CGI(Common Gateway Interface,通用网关接口)是一种常见的技术,比如我在回答这个问题,点击“提交”之后,这段文本便被浏览器传递到知乎的服务器CGI程序,经过处理之后,别人再打开这个页面就能看到我的回答了。
CGI在服务器端可以用很多语言实现,比如PHP、Python、C/C++、JAVA等等等等。
他们之间是不是真的有什么本质上的区别呢?
回复内容:
额,首先CGI是外部应用程序与Web服务器之间的接口标准,不同类型语言写的程序只要符合cgi标准,就能作为一个cgi程序与web服务器交互,早期的cgi大多都是c或c++。php可以作为一个cgi使用,作为cgi时,它将作为独立的进程运行,有请求过来就创建一个进程进行响应。当php作为apache的一个模块时,php将作为apache的一个子进程存在,接受apache调用。现在也有了php-fpm+nginx的组合,php-fpm是一个fast-cgi管理器,负责将接收到的请求分配给预先生成的php子程序,管理着php进程。 PHP(Hypertext Preprocessor,超文本预处理器)是一门编程语言,主要用于服务器端的动态页面生成和数据库操作,CGI是它的诸多应用之一。CGI(Common Gateway Interface,通用网关接口)是一种常见的技术,比如我在回答这个问题,点击“提交”之后,这段文本便被浏览器传递到知乎的服务器CGI程序,经过处理之后,别人再打开这个页面就能看到我的回答了。
CGI在服务器端可以用很多语言实现,比如PHP、Python、C/C++、JAVA等等等等。
下一篇: 关于Oracle数据库分页查询的小技巧
推荐阅读
-
JS中的位置和宽度:clientWidth、offsetWidth、scrollWidth等区别介绍
-
PHP中的插件机制原理和实例
-
Python中is和==的区别详解
-
浅析jQuery(function(){})与(function(){})(jQuery)之间的区别
-
PHP获取客户端真实IP地址的5种情况分析和实现代码
-
select count()和select count(1)的区别和执行方式讲解
-
jquery遍历之parent()和parents()的区别及parentsUntil()方法详解
-
ubuntu系统中/etc/rc.local和/etc/init.d/rc.local的区别详解
-
PHP 5.3.1 安装包 VC9 VC6不同版本的区别是什么
-
详解nodejs中exports和module.exports的区别