2017-02-22 31 views
-1

我是一名自学成才的开发者,学习了HTML,CSS,PHP,SQL和JAVASCRIPT来创建我自己的网站。这是一个交互式网站,根据简单的表单输入(字典样式)显示信息。在阅读apache.org中的文档时,我碰巧知道CGI编程,而且我很困惑。我是否必须学习CGI编程来构建和维护一个网站? (这是一个人的项目)我必须学习CGI编程来构建和维护一个网站吗?

编辑: 我之后的答案(和接受)做了CGI一些研究。 (对于像我这样的初学者) CGI不是一种编程语言,它的名称(通用网关接口)中声明了一个接口,用于在服务器中运行脚本(由浏览器请求)并返回结果到浏览器。

https://en.wikipedia.org/wiki/PHP维基百科的文章(关于PHP)提供有关在一个Web服务器的CGI和PHP之间的关系相当不错的解释,我引用下面这

有添加了支持两种主要方式PHP到Web服务器 - 作为本地Web服务器模块,或作为CGI可执行文件。 PHP有一个称为服务器应用编程 接口(SAPI)的 直接模块接口,该接口由许多Web服务器支持,包括 Apache HTTP Server,Microsoft IIS,Netscape(现已停用)和iPlanet。 某些其他Web服务器(如OmniHTTPd)支持Internet Server 应用程序编程接口(ISAPI),它是Microsoft的Web 服务器模块接口。如果PHP没有模块支持web 服务器,它总是可以用作通用网关接口(CGI)或FastCGI处理器;在这种情况下,Web服务器被配置为使用PHP的CGI可执行文件来处理对PHP文件的所有请求。

这只关于PHP和CGI,CGI可以和C,Perl等程序语言一起使用。当你为CGI提供Google时,你总是可以找到CGI和Perl,但这并不意味着Perl是CGI或者CGI是Pearl,CGI脚本也可以是其他语言。

回答

0

在我看来,如果你的目标是只有静态环境的网站,那么它应该足以知道你已经提到的内容。但是,对于动态内容(以及在服务器端运行的东西),您需要使用CGI。在某些时候,我使用Perl与CGI达成协议,我喜欢它,但CGI也可以使用任何其他编程语言,例如PHP来完成。

+0

@ dmi,谢谢,我的网站包含动态内容。你能指导我如何在PHP中做cgi,并且请解释什么是fast_cgi –

+0

@ dmi,通过指导我的意思是让我看看一些好的链接 –

+0

简而言之(据我所知),CGI为你提供了一种执行程序的方法在服务器端形成将在客户端(浏览器)显示的动态内容。通过这种方式,您可以将客户端动态(例如通过JavaScript实现)与服务器端动态结合在一起。例如,CGI可用于从数据库读取一些数据以在浏览器中显示。 – dmi

相关问题