我对通用网络编程语言的速度非常快,但我现在正在使用的工具之一就是CGI。我只能说CGI脚本很慢。
今天CGI仍然普遍使用吗?如果没有,它被什么取代了?
CGI还活着并积极使用是否有任何利基功能?
答案 0 :(得分:27)
CGI是协议,它是创建动态页面的最基本和最标准的方法。
在许多情况下它很有用:
所以... CGI很简单,但仍然非常有用 API ,允许简单地做一些事情。
例如,显示服务器正常运行时间的脚本
#!/bin/bash
echo Content-Type: text/plain
echo
uptime
什么可以更简单,更简单,更少依赖Web服务器?
答案 1 :(得分:16)
CGI已经被各种各样的Web编程技术所取代,包括PHP,各种Apache扩展,如mod_perl,各种风格的Java和框架,包括Java EE,Struts,Spring等,基于Python的框架,如Django,Ruby on Rails和许多其他Ruby框架,以及各种Microsoft技术。
我确信CGI仍然用于某些东西,但我猜它主要是一小部分已经存在多年的代码。维基百科确实提到FastCGI类似于CGI但没有巨大的性能缺陷。
答案 2 :(得分:4)
许多传统网站今天仍然使用cgi构建,尽管这些天人们正在远离它。我知道仍然使用CGI的着名应用程序之一是MovableType blog。
答案 3 :(得分:2)
我知道有两个正在积极开发的项目仍然使用CGI脚本才能生效。
第一个是Webmin基于网络的系统管理工具,我多年来一直在使用。
第二个是GitWeb,它允许您为Git存储库设置Web界面。
关于CGI的速度(或缺乏),我无法对此发表评论。根据我对Webmin的经验,我不能说我在这方面遇到任何问题。
答案 4 :(得分:2)
不支持移植(例如,PHP)的实时操作系统。
答案 5 :(得分:1)
许多共享主机通过CGI提供服务器端语言,如PHP,python和perl
答案 6 :(得分:1)
我仍然在没有PHP语言支持的嵌入式计算机上使用它。
答案 7 :(得分:0)
ASP,PHP,ASP.Net,Ruby on Rails是目前最重要的打击者。
答案 8 :(得分:0)
就像Cobol和Fortran一样,有一些基于CGI构建的大额资金系统当然会在未来保持良好状态。
并非新软件不是经常使用所有这些技术构建的。
答案 9 :(得分:0)
几个月前我离开的一个项目仍然使用CGI。但是,该站点适用于非常小的用户集(它只有大约40个用户,并且可能少于5个用户经常使用它)。虽然硬件已被更换了3到4次,但其中一些代码已经运行了近10年,很少或根本没有修改。我相信其他技术可以提供性能改进,但目前的性能是可以接受的,并且做出改变的人力很短,分布在太多领域,并且不熟悉Web技术(特别是自从我离开后)。这导致了一种态度:“如果它没有破裂,就不要修复它!”
至于我使用/计划调查的替换:在我的新职位上,我开发了一个使用PHP的Web应用程序。但是,我更像是一个Python粉丝,并计划很快调查WSGI。我还计划使用AJAX替换我为非营利组织自愿维护的网站上的CGI程序。