>  기사  >  백엔드 개발  >  php和cgi之间的区别?

php和cgi之间的区别?

WBOY
WBOY원래의
2016-06-06 16:44:071588검색

php的结构很像是网络服务器接收到一个请求,然后调用php这个程序处理php的脚本,和cgi的性质一样,但是为什么,很多人都把cgi作为一个过时的技术,或者说,将php视作与cgi截然不同的一种结构呢?
他们之间是不是真的有什么本质上的区别呢?

回复内容:

额,首先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等等等等。
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.