common gateway interface 通用网关接口

可以让客户端从浏览器向执行在服务器上的程序请求数据。CGI描述了客户端和服务器程序之间传输数据的一种标准。

编程语言perl是一种被广泛用来写CGI程序的语言。

工作方式:

在特定位置(http://www.example.com/wiki.cgi)定义了可以运行的CGI程序。

当收到一个匹配的url请求,相应的程序就会被调用,并将客户端发送的数据作为输入。

程序的输入会由Web服务器手机,并加上合适的档头,发送回客户端。

一般每次的 CGI 请求都需要新生成一个程序的副本来运行,这样大的工作量会很快将服务器压垮,因此一些更有效的技术像 mod_perl,可以让脚本解释器直接作为模块集成在 Web 服务器(例如:Apache)中,这样就能避免重复载入和初始化解释器。不过这只是就那些需要解释器的高级语言(即解释语言)而言的,使用诸如 C 一类的编译语言则可以避免这种额外负荷。由于 C 及其他编译语言的程序与解释语言程序相比,前者的运行速度更快、对操作系统的负荷更小,使用编译语言程序是可能达到更高执行效率的,然而因为开发效率等原因,在目前解释性语言还是最合适的

CGI相关概念的更多相关文章

  1. J2EE相关概念,EJB/JNDI/JMS/RMI等

    J2EE 四层模型 J2EE的核心API.组件.相关概念 JDBC(Java Database Connectivity) JNDI(Java Name and Directory Interface ...

  2. CGI与FastCGI nginx+PHP-FPM

    本文转载自CGI与FastCGI 1.当我们在谈到cgi的时候,我们在讨论什么 最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态html. ...

  3. IDDD 实现领域驱动设计-上下文映射图及其相关概念

    上一篇:<IDDD 实现领域驱动设计-理解限界上下文> 距离上一篇有几天时间了,<实现领域驱动设计>第三章的内容都是围绕一个词-上下文映射图,我大概断断续续看了几天,总共看了两 ...

  4. CGI与FastCGI

    当我们在谈到cgi的时候,我们在讨论什么 最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态html.事物总是不 断发展,网站也越来越复杂, ...

  5. CGI, FastCGI, WSGI, uWSGI, uwsgi简述

    CGI 通用网关接口(Common Gateway Interface/CGI)是一种重要的互联网技术,可以让一个客户端,从网页浏览器向执行在网络服务器上的程序请求数据.CGI描述了服务器和请求处理程 ...

  6. Servlet和CGI的区别

    Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销 ...

  7. fastcgi与cgi的区别

    fastcgi与cgi的区别 先讲下cgi:cgi在2000年或更早的时候用得比较多, 以前web服务器一般只处理静态的请求,如果碰到一个动态请求怎么办呢?web服务器会根据这次请求的内容,然后会fo ...

  8. CGI与fastcgi与php-fpm与php-cgi的关系

    cgi是一个协议,它规定了服务器Nginx会将那些数据传送给PHP-cgi fastcgi也可以说是一个协议.fastcgi是对cgi的性能的一次提高.fastcgi会先启动一个master,解析配置 ...

  9. CGI和ISAPI

    1) CGI概念CGI即通用网关接口(Common Gateway Interface),它是一段程序,运行在服务器上,提供同客户端HTML页面的交互,通俗的讲CGI就象是一座桥,把网页和WEB服务器 ...

随机推荐

  1. Python 获取 网卡 MAC 地址

    /*********************************************************************** * Python 获取 网卡 MAC 地址 * 说明: ...

  2. 用jquery将复选框改成单选框

    前提是要包含jquery文件. 相关代码: jQuery(function($) { init_price_checkbox("by_price"); init_price_che ...

  3. TCP/IP 协议大致的概念

    最近在看<图解HTTP>和<HTTP权威指南>,对TCP/IP大致过了一下. TCP/IP 不仅仅是TCP 和 IP  TCP/IP 是协议族,与之相对的事IEEE等标准组织设 ...

  4. iOS学习笔记---oc语言第五天

    字典,数组 ,集排序 一.字典类 存储以下数据 name:张三; sex:男;age:18 film:风暴; playcount:10000次;price:60元 字典类用于保存具有映射关系(key- ...

  5. eBay_GTC和Relist

    1.销售里面有个GTC 那个可以给你做累计销量,如果累计销量高,能大幅提升你的排名位置也可以用30天的摆放方法,修改里面数量,但是30天结束后relist就不知结果了关于累计销量 google搜索里面 ...

  6. Java 23种设计模式全解析

    转自:http://blog.csdn.net/longyulu/article/details/9159589

  7. Java泛型和链表

    泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数.这种参数类型可以用在类.接口和方法的创建中,分别称为泛型类.泛型接口.泛型方法. Java语言引 ...

  8. Meven笔记

    技术交流群:233513714 1.Meven环境搭建 http://www.cnblogs.com/quanyongan/archive/2013/04/17/3025971.html 2.Ecli ...

  9. Git错误non-fast-forward

    Git错误non-fast-forward后的冲突解决 [日期:2012-04-21] 来源:Linux社区  作者:chain2012 [字体:大 中 小]   当要push代码到git时,出现提示 ...

  10. GDB调试器

    /*this project used for gdb debug c programs*//*At first,using compile command turn out the executab ...