什么是CGI 
1. 定义: 
CGI(Common Gateway Interface)是HTTP服务器与你的或其它机器 
上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。

2. 功能: 
绝大多数的CGI程序被用来解释处理杰自表单的输入信息,并在服 
务器产生相应的处理,或将相应的信息反馈给浏览器。CGI程序使 
网页具有交互功能。

3. 运行环境: 
CGI程序在UNIX操作系统上CERN或NCSA格式的服务器上运行。 
在其它操作系统(如:windows NT及windows95等)的服务器上 
也广泛地使用CGI程序,同时它也适用于各种类型机器。

4. CGI处理步骤: 
⑴通过Internet把用户请求送到服务器。 
⑵服务器接收用户请求并交给CGI程序处理。 
⑶CGI程序把处理结果传送给服务器。 
⑷服务器把结果送回到用户。

5. CGI服务器配置: 
CGI程序不是放在服务器上就能顺利运行,如果要想使其在服务器 
上顺利的运行并准确的处理用户的请求,则须对所使用的服务器进 
行必要的设置。 
配置:根据所使用的服务器类型以及它的设置把CGI程序放在某一 
特定的目录中或使其带有特定的扩展名。 
⑴CREN格式服务器的配置: 
编辑CREN格式服务器的配置文件通常为/etc/httpd.conf/ 
在文件中加入:Exec cgi-bin/*/home/www/cgi-bin/*.exec 
命令中出现的第一个参数cgi-bin/*指出了在URL中出现的目录 
名字,并表示它出 
现在系统主机后的第一个目录中,如: 
http://edgar.stern.nyn.edu/cgi-bin/ 
命令中的第二个参数表示CGI程序目录放在系统中的真实路径。 
CGI目录除了可以点网络文件放在同一目录中,也可以放在系统 
的其它目录中,但必须保证在你的系统中也具有同样的目录。在 
对服务器完成设置后,须重新启动服务器(除非HTTP服务器是用 
inetd启动的)。 
⑵NCSA格式服务器的配置 
在NCSA格式服务器上有两种方法进行设置: 
①在srm.conf文件(通常在conf目录下)中加入: 
Script Alias/cgi-bin/cgi-bin/ 
Script Alias命令指出某一目录下的文件是可执行程序,且这 
个命令是用来执行 
这些程序的;此命令的两个参数与CERN格式服务器中的Exec命 
令的参数的含意一样。 
②在srm.conf文件加入: 
Add type application/x-httpd-cgi.cgi 
此命令表示在服务器上增加了一种新的文件类型,其后第一个 
参数为CGI程序的MIME类型,第二个参数是文件的扩展名,表 
示以这一扩展名为扩展名的文件是CGI程序。 
在用上述方法之一设置服务器后,都得重新启动服务器(除非 
HTTP服务器是用inetd启动的)。

什么是IIS 
首先,Internet Information Server的缩写为(IIS)是一个World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页,并且有ASP(Active Server Pages)、JAVA、VBscript产生页面,有着一些扩展功能。IIS支持一些有趣的东西,象有编辑环境的界面(FRONTPAGE)、有全文检索功能的(INDEX SERVER)、有多媒体功能的(NET SHOW) 
其次,IIS是随Windows NT Server 4.0一起提供的文件和应用程序服务器,是在Windows NT Server上建立Internet服务器的基本组件。它与Windows NT Server完全集成,允许使用Windows NT Server内置的安全性以及NTFS文件系统建立强大灵活的Internet/Intranet站点。 
1.IIS的安装 
IIS可以在Windows NT安装时安装,也可以安装完Windows NT后用“控制面板”中的“添加/删除程序”安装,安装路径为光盘中的:i386\inetsrv\inetstp.exe。安装过程中要求添加相应的ODBC驱动程序。 
2.IIS的管理 
IIS通过ISM(Internet Service Manager)进行管理,ISM有两个版本,一个以普通应用程序的方式运行,一个在Web浏览器中运行,二者的差别在于后者不能启动和停止Internet服务。 
ISM(应用程序方式)管理界面:在“查看”菜单中选择“查看报告”、“服务器查看”、“服务查看”可以得到三种视图: 
报告视图 缺省的视图,按字母顺序依次显示所选择的计算机及其上安装的服务。通过该视图可以:连到服务器并显示其属性对话框;启动、停止或暂停服务;可选择显示哪些服务(FTP、WWW、GOPHER)。 
服务器视图 显示网络上运行Internet服务的计算机名。打开该计算机可以看到正在运行的Internet服务。双击服务器名可以显示其属性对话框。 
服务视图 列出所有的Internet服务。打开服务可以看到哪些计算机运行该服务。双击服务下的计算机名,可以打开该计算机上的服务属性对话框。 
3.IIS安全性 
IIS的安全性核心依赖于Windows NT Server内置的安全性,IIS自身也内置了安全性。包括加密、验证以及IIS扩展等。 
(1)Windows NT Server安全性:Windows NT提供用户账户安全性、NTFS安全性。 
①用户账户安全性:Windows NT要求用户提供有效账户以及口令才能访问Windows NT。IIS安装时创建Internet Guest 账户,缺省情况下,所有IIS用户都使用这个账户登录到服务器,这个账户只允许本地登录,没有其他权利。假如允许远程用户用登录Internet Guest 账户登录就不必给远程用户用户名及口令,Windows NT以Internet Guest 账户对待。 
②NTFS文件安全性:NTFS提供安全性,可以控制对数据文件的访问,应当将数据文件放在NTFS分区。NTFS可以精确控制哪些用户和组以什么权限访问文件和目录。 
(2)IIS的安全性:除了Windows NT的安全措施外,IIS本身也有安全控制能力。通过账户名及口令控制访问:可以配置WWW服务要求用户连入服务器之前提供一个合法的用户名及口令。

什么是CGI的更多相关文章

  1. CGI与FastCGI nginx+PHP-FPM

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

  2. CGI与FastCGI

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

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

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

  4. Servlet和CGI的区别

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

  5. fastcgi与cgi的区别

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

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

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

  7. CGI和ISAPI

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

  8. CGI概念

    CGI(通用网关接口,Common Gateway Interface) CGI是Web服务器与请求处理程序之间传输数据的一种标准,保证Web服务器传递过来的数据是标准格式的,其程序须运行在网络服务器 ...

  9. boa + ajax + cgi ajax请求cgi

    最近公司要做一个通讯管理机,然后需要和另外一个同事一起做,我们需要用到boa+Ajax+CGI,以前没试过与CGI交互,一开始发现问题挺大的,用ajax请求cgi,总是不返回数据,又或者请求回来的是c ...

  10. Easyui datagrid加载本地Json数据,CGI数据

    网上示例(记得引用Jquery): [html] view plaincopy var jsonstr = '{"total":1,"rows":[{" ...

随机推荐

  1. Atitit  循环(loop), 递归(recursion), 遍历(traversal), 迭代(iterate).

    Atitit  循环(loop), 递归(recursion), 遍历(traversal), 迭代(iterate). 1.1. 循环算是最基础的概念, 凡是重复执行一段代码, 都可以称之为循环. ...

  2. MyBatis 环境搭建 (一)

    一.MyBatis简介 MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBatis 使用简 ...

  3. 动手搭个wordpress

    看到很多人都是自己搭建博客服务器,然后一切都在自己的掌控之下,这样就不存在什么迁移,数据安全之类的问题,当然需要自己搞个空间了,不过现在都便宜的不行,$15/year,也是醉了.我不怎么写博客,但是个 ...

  4. HTTP学习三:HTTPS

    HTTP学习三:HTTPS 1 HTTP安全问题 HTTP1.0/1.1在网络中是明文传输的,因此会被黑客进行攻击. 1.1 窃取数据 因为HTTP1.0/1.1是明文的,黑客很容易获得用户的重要数据 ...

  5. OOM异常产生的原因和处理方法

    一般而言,android中常见的原因主要有以下几个: 1.数据库的cursor没有关闭. 2.构造adapter没有使用缓存contentview. 3.调用registerReceiver()后未调 ...

  6. poj1330Nearest Common Ancestors 1470 Closest Common Ancestors(LCA算法)

    LCA思想:http://www.cnblogs.com/hujunzheng/p/3945885.html 在求解最近公共祖先为问题上,用到的是Tarjan的思想,从根结点开始形成一棵深搜树,非常好 ...

  7. python类定义与c#的一些区别

    c#中可以定义一个空类,但是python中定义空类需要加pass class EmptyClass(object): pass python的lei是多继承   python子类继承了基类,如果子类也 ...

  8. 漫谈可视化Prefuse(三)---Prefuse API数据结构阅读有感

    前篇回顾:上篇<漫谈可视化Prefuse(二)---一分钟学会Prefuse>主要通过一个Prefuse的具体实例了解了构建一个Prefuse application的具体步骤.一个Pre ...

  9. 【大数据】Linux下安装Hadoop(2.7.1)详解及WordCount运行

    一.引言 在完成了Storm的环境配置之后,想着鼓捣一下Hadoop的安装,网上面的教程好多,但是没有一个特别切合的,所以在安装的过程中还是遇到了很多的麻烦,并且最后不断的查阅资料,终于解决了问题,感 ...

  10. 性能调优:理解Set Statistics IO输出

    性能调优是DBA的重要工作之一.很多人会带着各种性能上的问题来问我们.我们需要通过SQL Server知识来处理这些问题.经常被问到的一个问题是:早上这个存储过程运行时间还是可以的,但到了晚上就很慢很 ...