【问题标题】:what is cgi programming什么是cgi编程
【发布时间】:2011-02-20 17:57:56
【问题描述】:

CGI 编程的确切含义。如果我正在用 'C' 编写 cgi 程序,

在这种情况下,“cgi”是什么意思?

servelt 环境是对经典 cgi 编程的抽象吗?

【问题讨论】:

标签: cgi


【解决方案1】:

通用网关接口的缩写,用于在万维网服务器和 CGI​​ 程序之间传输信息的规范。 CGI 程序是任何旨在接受和返回符合 CGI 规范的数据的程序。该程序可以用任何编程语言编写,包括 C、Perl、Java 或 Visual Basic。 CGI 程序是 Web 服务器与用户动态交互的最常用方式。例如,许多包含表单的 HTML 页面使用 CGI 程序在表单数据提交后对其进行处理。为 Web 用户提供动态反馈的另一种越来越普遍的方法是包含在用户机器上而不是在 Web 服务器上运行的脚本或程序。这些程序可以是 Java 小程序、Java 脚本或 ActiveX 控件。这些技术统称为客户端解决方案,而 CGI 的使用是服务器端解决方案,因为处理发生在 Web 服务器上。

【讨论】:

    【解决方案2】:

    CGI 表示通用网关接口...它是一个 Web 服务器,它接收用户请求并处理并将响应发送回用户。在 CGI 中,对于每个新用户请求,新进程都已创建并处理用户请求并将响应转发给用户

    【讨论】:

      【解决方案3】:

      看 通用网关接口 (CGI) 是一种标准协议,它定义了网络服务器软件如何将网页的生成委托给控制台应用程序。此类应用程序称为 CGI 脚本;它们可以用任何编程语言编写,尽管经常使用脚本语言。

      http://en.wikipedia.org/wiki/Common_Gateway_Interface

      【讨论】:

        【解决方案4】:

        不,servlet 环境不是对它的抽象。 Servlet 在第一次被请求时被加载到 JVM 中,并像任何其他 Java 对象一样被实例化/执行/释放。 CGI 进程让 Web 服务器调用外部程序(Perl/Ruby/Python 解释器或基于 C 的 CGI 应用程序),它运行然后完全退出。

        【讨论】:

        • 谢谢mike,我只是想确保我理解了这个概念,你的意思是说,服务器和生成动态页面的程序(servlet)都在同一个运行时环境(JVM ) ?所以那个servlet环境不是cgi规范的抽象?
        【解决方案5】:

        通用网关接口 - 这里解释:http://www.openroad.org/cgihelp/cgi.html

        【讨论】:

          【解决方案6】:

          向网页添加交互性的最古老且仍然非常常见的方法是通过 CGI 程序。通用网关接口 (CGI) 是一种协议标准,它指定如何将信息从网页通过 Web 服务器传递到程序,然后以适当的格式从程序返回到浏览器。不幸的是,许多人将执行特定任务的实际程序与 CGI 协议混淆了。实际上,它恰好是一个 CGI 程序,因为它是为使用 CGI 规范来回传递信息而编写的。

          【讨论】:

            猜你喜欢
            • 2010-09-23
            • 2010-09-18
            • 1970-01-01
            • 2013-05-12
            • 2010-11-02
            • 2020-02-12
            • 2011-01-06
            • 1970-01-01
            相关资源
            最近更新 更多