设为首页收藏本站

数字电视开发论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

快捷登录

胜天工科技销售各种数字电视信号调制卡胜天工科技销售各种数字电视信号码流卡

【游客、新手、注册会员的区别】 【积分策略和会员晋级说明】 【发帖和附件上传规则】 【如何下载感兴趣的资料】 【如何获取梦游币】 【侵权资料处理及免责说明】
查看: 642|回复: 0

CGI是什么?

[复制链接]
  • TA的每日心情
    开心
    2 小时前
  • 签到天数: 2506 天

    [LV.Master]伴坛终老

    新浪微博达人勋

    发表于 2016-11-20 23:05:13 | 显示全部楼层 |阅读模式
    分享到:
    消息来自- 北京
    CGI是什么?

    CGI 意思为 Common Gateway Interface,一种基于浏览器的输入,在Web服务器上运行的程序方法。CGI脚本使你的浏览器与用户能交互,为了在数据库中寻找一个名词,提供你写入的评论,或者从一个表单中选择几个条目并且能得到一个明确的回答。如果你曾经遇到过在web上填表或进行搜索,你就是用的CGI脚本,你那时也许没有意识到,因为大部分工作是在服务器上运行的,你看到的只是结果。

    作为一个网页设计者, 你创建客户端的 CGI脚本, 服务器端的程序用来处理用户输入, 结果返回给用户。

    CGI脚本是什么?

    CGI脚本简单地讲是个运行在Web服务器上的程序,有浏览器的输入触发,这个脚本通常象服务器和系统中其他程序如数据库的桥梁。

    CGI 脚本难道不是一个真正的脚本?按照你的服务器的支持,他们可能是一个编译好的程序或者批命令文件或者其他可执行的东西。为了简单起见,我们统称他们为脚本scripts。

    CGI 脚本是任何运行在web服务器上的程序,CGI意思是Common Gateway Interface。

    CGI脚本是用下列两种方法使用的:作为一个表单的ACTION或作为一个页中的直接link。

    CGI脚本是怎样工作的?

    CGI脚本由服务器调用,基于浏览器的数据输入。其工作原理如下:
    一个URL指向一个CGI脚本,一个CGI脚本的URL能如普通的URL一样出现,区别于.htm/.html静态URL,CGI的URL是动态URL,如http://xxxx.com/cgiurl
    服务器CGI接收浏览器的请求,按照那个URL指向对应的脚本文件(注意文件的位置和扩展名),执行CGI脚本。
    CGI脚本执行基于输入数据的操作,包括查询数据库、计算数值或调用系统中其他程序。
    CGI脚本产生某种Web服务器能理解的输出结果。
    服务器接收来自脚本的输出并且把它传回浏览器,让用户了解处理结果。

    一个简单的例子

    这里详细一步一步地解释所有有关发生的细节。

    假设有一个Html页面有一个指向CGI脚本的链接:
    <A HREF="http://www.jdon.com/cgi-bin/getdate">Display the Date</A>
    这个链接指向的是一个CGI脚本,因为其中有cgi-bin的路径。在许多服务器cgi-bin是仅能够放置CGI脚本的目录。
    当你选择这个链接时,你的浏览器将向www.jdon.com服务器提出请求。服务器接收这个请求计算出URL处的脚本文件名然后执行getdate这个脚本。

    这个getdate脚本,在UNIX系统中执行是这样的:
    #!/bin/sh
    echo Content-type: text/plain
    echo
    /bin/date
    第一行是个特殊的命令,告诉UNIX系统这是个shell脚本;真正逻辑是从这行开始的下一行,这个脚本做两件事:它输出行Content-type: text/plain, 接着开始一个空行;第二, 它调用UNIX系统时间date程序,这样输出日期和时间。脚本执行后输出应该这样:
    Content-type: text/plain
    Tue Oct 25 16:15:57 EDT 1994
    这个Content-type是什么东东?它是个特殊的编码,Web服务器用来告诉浏览器输出这个文本是什么类型的,这与HTML中Content-type含义是一样的。
    这是最基本的,实际情况要复杂得多,总之可以用来理解浏览器、服务器和脚本之间是怎样工作的。
    您需要登录后才可以回帖 登录 | 注册 新浪微博登陆

    本版积分规则

    嗨!您好:
    欢迎来到数字电视开发论坛。
    我的名字叫梦梦
    很高兴能够为您服务!
    如果已经注册【立即登录】
    还没有账号请【注册】
    嗨!您好:
    欢迎来到数字电视开发论坛。
    我的名字叫梦梦
    很高兴能够为您服务!
    如果已经注册【立即登录】
    还没有账号请

    QQ|小黑屋|手机版|Archiver|数字电视开发网 ( 京ICP备16008897号-5   

    GMT+8, 2019-9-23 13:14 , Processed in 0.141340 second(s), 38 queries , Gzip On.

    Powered by Discuz! X3.1

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表