1、iis8.5web服务器上的"isapi 和cgi 禁止"怎么启用
添加 ISAPI 和 CGI 限制
主要有四种方式:①使用用户界面 (UI)。②在命令行窗口中运行 Appcmd.exe 命令。③直接编辑配置文件。④编写 WMI 脚本。
一:使用用户界面(UI)
1、打开 IIS 管理器,然后导航至您要配置的级别。
2、在“功能视图”中,双击“ISAPI 和 CGI 限制”。
3、在“操作”窗格中,单击“添加”。
4、在“添加 ISAPI 或 CGI 限制”对话框的“ISAPI 或 CGI 路径”文本框中键入该 .dll 或 .exe 文件的路径,或者单击浏览按钮 (...) 导航至该文件的位置。
5、在“描述”文本框中,键入有关限制的简要描述。
6、选中“允许执行扩展路径”,以允许限制自动运行。 如果未选中此选项,限制的状态将默认为“不允许”。 以后,您可以通过选择限制并在“操作”窗格中单击“允许”来允许该限制。
7、单击“确定”。
二:命令行
若要添加 ISAPI 和 CGI 限制,请使用以下语法:
appcmd set config /section: isapiCgiRestriction /+"[path=' string ',description=' string ',allowed='True | False']"
变量 path string 是 CGI 或 ISAPI 程序的 path。 变量 description string 用于描述该 CGI 或 ISAPI 程序。 allowed 属性用于确定 IIS 是否可以运行该 CGI 或 ISAPI 程序。 例如,若要创建启用 ISAPI 扩展 Test ISAPI 的 ISAPI 限制,请在命令提示符处键入以下命令,然后按 Enter:
appcmd set config /section: isapiCgiRestriction /+"[path=' %windir%\system32\inetsrv\test.dll ',description=' Test ISAPI ',allowed='True']"
三:配置
本主题中的过程会影响以下配置元素:
<add> ,此元素在如下元素下面: <isapiCgiRestriction>
四:WMI
请使用以下 WMI 类、方法或属性执行此过程:
IsapiCgiRestrictionSection.Add
相关知识点介绍:
ISAPI 和 CGI 限制是允许在服务器上执行动态内容的请求处理程序。 这些限制为 CGI 文件 (.exe) 或 ISAPI 扩展 (.dll)。 如果 IIS 配置系统允许添加自定义 ISAPI 或 CGI 限制,则您可以添加它们。
2、两种古老的WEB编程技术 CGI和ISAPI之间的区别
引言
isapi与cgi都属于通用的网关接口,主要用来实现www服务器与客户端的信息交互。
随着www爆炸式的发展及其日益普及,人们的眼光已被充斥其上的商机所吸引。在www上求取经济利益的方式主要有以下几种:
通过为企业等作广告宣传收取广告费;
向入网观看者收取订阅费;
直接在网上出售商品和服务。
目前大多数网站提供信息的方式是由用户通过客户浏览器(如netscape或explorer等)与www服务器连接,然后用鼠标点按超连接以浏览相关主
页。在此过程中,基本上是服务器向客户端单方向的信息传递,随着服务需求的不断扩大,这种单纯的单方向传递信息的静态主页已不能满足需求。不论是服务提供
方还是客户,都希望浏览服务器将信息发送到用户同时,用户端也能将信息发送到服务器端,实现服务器与客户的交互。典型的应用如:用户登记表、用户留言板以
及用户通过www检索服务器端的数据库等。
要实现一个可与用户交互信息的服务系统,所需增加的有两项:交互式主页和用户输入信息处理程序。交互式主页即有输入信息的编辑框,选择菜单按钮之类
的主页,以供用户输入信息;用户输入的信息则交由用户信息处理程序处理。实现该程序可以有多种途径,该程序可以放在服务器端,也可以放在客户机端,前者如
cgi、isapi,后者如javaapplet等。本文只讨论前者,将阐述isapi的优点,并就其实现举例说明。
二、web交互环境的实现
2.1交互式主页
要实现web上的交互环境,用户必须能够在他浏览到的主页上输入信息,这就是一个交互式的主页。一般来说,用户输入信息的形式有填写编辑框,点选无线按钮等选择框及选择下拉菜单等,所以
此文来自: 马开东博客 转载请注明出处 网址: http://www.makaidong.com
交互主页也必须有这些输入元素项。下面是一个简单的交互主页例子:
交互式主页html源文件:isapi1.htm
「html」
「title」test「/title」
「head」
isapitest
「/head」
「body」
「formaction="/gjy/isapi1/debug/isapi1.dll?registeruser"method=post」
inputyourregisterinfomation:「br」
name:「inputtype="text"name="first"」「br」
address:「inputtype="text"name="middle"」「br」
email:「inputtype="text"name="last"」「br」「p」
「inputtype="submit"」
「inputtype="reset"」「/p」
「/form」
「/body」
「/html」
通过explorer浏览器打开该文件,可以看到如下效果(编辑框中已输入内容):
2.2实现交互主页的途径。
从上述主页制作描述可见,一个交互式主页的制作是很简单的,但要真正实现与用户的交互,还必须要有应用程序的参与。这个程序可以属于多种样式,如cgi、javaapplet以及isapi。在上述主页文件中,有一项:
「formaction="/gjy/isapi1/debug/isapi1.dll?registeruser"method=post」
这里就指明了对应处理该主页输入信息的程序(isapi1.dll),这是isapi的应用程序动态连接库。对于cgi应用程序也是一样的处理。
一般来说,该程序的功能就是要将用户输入信息传到服务器应用程序。
cgi是大家都比较熟悉的一种实现上述功能的有效途径,也可能是当前最为流行的一种,而isapi是微软独特的具有类似cgi功能的网络应用接口标准。isapi在性能上较之cgi具有许多优良特性。下面我们简单介绍一下cgi与isapi以及它们之间的性能差别。
三、cgi原理及其性能
3.1cgi概念
cgi即通用网关接口(commongatewayinterface),它是一个www服务器
主机对外服务的标准接口,一般来说,一个cgi接口的功能就是在超文本文件和服务器主机应用程序间传递信息。
3.2cgi程序语言
事实上,任何一种程序语言,只要能在服务器主机上利用cgi接口来编写应用程序,都可以叫作cgi程序语言。目前最为流行的cgi程序语言有四种:c,shell,perl和visualbasic,其它一些语言也有许多人在用,如tcl,fortran及applescript等。
3.3cgi程序的执行
cgi程序一般是个可执行程序。编译好的cgi程序一般要集中放在一个目录下。具体存放的位置随操作系统的不同而不同,例如unix系统下是放在cgi-bin子目录下,而在windows操作系统下
(注意,这里不包括nt4.0)以webstar或website作www服务器,cgi程序都放在cgi-win下。cgi程序的执行一般有两种调用方
式:1是通过url直接调用,如:“http://202.114.2.182/cgi-win/cgi.exe”,在浏览器的url栏里直接写入上述描
述就可以调用该程
此文来自: 马开东博客 转载请注明出处 网址: http://www.makaidong.com
序;另一种方式,也是主要的方式,是通过交互式主页里的form栏调用,通常都是用户在填完一张输入信息主页后按确认按钮启动cgi程序,前面的交互主页就是一个如此调用cgi的典型例子。
3.4cgi工作的主要流程
cgi工作的主要流程是:1.一个用户请求激活一个cgi应用程序;2.cgi应用程序将交互主页里用户输入信息提取出来;3.将用户输入的信息传给服务器主机应用程序(如数据库查询〕;4.将服务器处理结果通过html文件返回给用户;5.cgi进程结束。
3.5cgi的性能评价
cgi的跨平台性能极佳,几乎可以在任何操作系统上实现,如dos、windows、unix、os/2、macintosh等。实现cgi的编程语言也有很多选择。cgi的应用程序一般都是一个独立的可执行程序,和www服务器各自占据着不同的进程,而且一般一个cgi程序只能处理一个用户请求。这样,每有一个用户请求,都会激活一个cgi进程,当用户请求数量非常多时,会大量挤占系统的资源如内存,cpu时间等,造成效能低下。
四、isapi原理及其性能
4.1isapi概念
isapi即,是微软提供的一套面向internet服务的api接口,它能实现cgi能提供的全部功能,并在此基础上进行了扩展,如提供了过滤器应用程序接口。
4.2isapi程序语言
由于开发isapi应用要用到微软的一套api,所以能用来开发isapi应用的语言不如cgi那么多。主要有visualc++4.1以上版本,visualbasic5.0、borlandc++5.0也可以。
4.3isapi原理
isapi的工作原理和cgi大体上是相同的,都是通过交互式主页取得用户输入信息,然后交服务器后台处理。但是二者在实现机制上大相庭径。isapi与cgi最大的区别在于:不同于cgi,在isapi下建立的应用程序是以动态连接库的形式存在;而cgi的应用程序一般都是可执行程序。
4.4isapi程序的执行
isapi应用的工作流程与cgi有一些不同。isapi应用的dll不仅可以象cgi程序一样被用户请求激活,还可以被系统预先激活来监视用户输
入;对于被用户激活的dll,在处理完一个用户请求后不会马上消失,而是继续驻留在内存中等待处理别的用户输入,直到过了一段时间后一直没有用户输入。
4.5isapi性能评价
一个isapi的dll,可以在被用户请求激活后长驻内存,等待用户的另一个请求,还可以在一个dll里设置多个用户请求处理函数,此外,isapi的dll应用程序和www服务器处于同一个进程中,效率要显著高于cgi。
不过isapi的平台兼容性较差,目前只能用于微软自己的windows95和nt操作系统上,服务器平台也仅限于iis(internetinformationserver)和mspersonalwebserver以及ntworkstation上的peerwebserver。
五、isapi的实现
能够支持isapi开发的平台只有微软的几个平台组合(如nt+iis,win95+mspersonalwebserver)。因此开发isapi只能
这几个平台上。开发语言前已有述,这里向大家推荐visualc++4.2版,它的wizard提供了专门制作isapi的功能项。
3、我用tomcat搭建web服务器 感觉和CGI无关了?是不是现在不用CGI了?
谁说CGI很古老的东西啊·· 笑看人生 的懂不懂的··
CGI和JSP、ASP一样的么?
你知道回不知道CGI是什答么呀···别误导别人啊···
给楼主点建议·
你的WEB服务器是在什么环境下的··
如果是嵌入式环境下 建议用BOA做WEB服务器,对CGI的支持也比较好··是当前很适用的WEB服务器了··
至于相关的如何搭建、如何配置、网上的文章资料很多的··搜索下就可以了··
4、STM32 WEB服务器经常用到CGI SSI,可是为什么这方面一个具体的应用教程都没有?
其实SSI跟asp差别蛮大的,ssi只能是在shtml文件载入的时候,其中的ss标签被替换为其他内容,(何种标签替换为何种内容 是用户在LwIP协议中自定义的),而ASP、CGi是可以在html载入后动态调用的,他们才能实现完善的动态交互功能
至于如何入手,lwip的源码里面有详尽的英文注释,lz可以对着看看。
如果你想进行lwip 的CGI编程,建议你看看这么几个文件:httpd.h httpd.c httpd_cgi_ssi.c
我刚好是先学习了普通的PC机上搭建 IIS 服务器,学习html 、cgi、asp方面的知识,然后才接触lwip,然后在别人搭建好的嵌入式服务器上进行cgi编程,基本上手了。
硬件上的cgi编程更底层,而复杂,如果你难以入手,你可以在你的windows下搭建IIS服务器,熟悉一下cgi,再转stm32上实现
5、webserver与CGI是什么关系?
webserver是建立CGI环境的先决条件
6、Web中的CGI是什么?她指的是什么?
CGI(common gate internetgace)通用网关接口,是一段程序服务器上供客户端HTML页面的接口,通俗讲CGI就像是一座桥,网页和 WEB服务器中的执行程序连接起来,把HTML接受的指令传递给服务器,把服务器执行的结果返还给HTML页;CGI可以实现处理表格,数据库查询,送电子邮件等许多操作,常见的CGI就是计数器。CGI使网页变得不是静态的,是交互式的。
7、自己写的web服务器如何调用CGI?
web前端不需自要理会CGI
CGI居于web服务器端.
CGI通过环境变量获取http请求,响应信息以及首部,通过stdin获取http主体,通过stdout输出http主体.从而完成http动态页面的构建.
8、两种古老的WEB编程技术 CGI和ISAPI之间的区别
ISAPI执行方式是以DLL动态库的形式使用,它能实现CGI提供的全部功能,并在此基础上进行了扩展,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,这样来提高程序的执行效率;
CGI执行方式,把网页和WEB服务器中的执行程序连接起来,它把HTML接收的指令传递给服务器的执行程序,再把服务器执行程序的结果返还给HTML页。CGI 的跨平台性能极佳,几乎可以在任何操作系统上实现。 CGI方式在遇到连接请求(用户请求)先要创建cgi的子进程,激活一个CGI进程,然后处理请求,处理完后结束这个子进程。这就是fork-and-execute模式。所以用cgi 方式的服务器有多少连接请求就会有多少cgi子进程,子进程反复加载是cgi性能低下的主要原因。都会当用户请求数量非常多时,会大量挤占系统的资源如内存,CPU时间等,造成效能低下。
9、web服务器怎么才能支持cgi
shtml和asp 有一些相似,以shtml命名的文件里,使用了ssi的一些指令,就版像asp中的指令,你可以权在SHTML文件中写入SSI指令,当客户端访问这些shtml文件时,服务器端会把这些SHTML文件进行读取和解释,把SHTML文件中包含的SSI指令解释出来
10、tomcat 和 apache跟CGI都有什么关系呢?
1、不是web服务,是web服务器软件。
2、所谓的服务,一般是指windows服务,也就是说,开机以后你看不到,但是在后台自动运行。
3、iis可以作为windows服务运行。
4、apache和tomcat也可以作为windows服务运行。
5、apache、tomcat、IIS、pws都是web服务器软件。
6、iis下跑asp是因为iis自带了解析器,所以不用你再安装了。
7、iis和apache功能基本相似。
8、jsp的解析器需要自己安装,那就是tomcat。安装后还要让apache或者iis知道怎么调用tomcat,这就是配置。
9、php也一样,需要下载php的解析器,安装配置。
10、apache、iis、tomcat可以安装在一个机器上,但是他们一般都是用80端口,很是麻烦,这就需要配置,否则你在80端口只能看到一个。
11、oracle是数据库,单独运行,不要要web服务器,有web界面管理工具,但这个是它自带的,只要安装了oracle数据库,自己就有了!
12、你的基础太差,建议多看看资料,多看看最基本的书本!