资源大全 | 神秘文化 | 在线翻译 | QQ专区 | 视频教程 | 彩信频道 | 搜索引擎 | BT下载 |  | 网站地图
设为首页
加入收藏
联系站长
您现在的位置: 一百网络 >> 其他编程 >> CGI编程 >> 文档正文
最近更新
普通文档 CGI教学:CGI常用环境变量
普通文档 CGI教学:CGI安全问题
普通文档 CGI教学:第四章 设置Web
普通文档 CGI教学:第三章 计数器的
普通文档 CGI教学:第二章 动态创建
普通文档 CGI教学:第一章 cgilib例
普通文档 CGI教程(5)利用CGI解码F
普通文档 CGI教程(4)HTML 表单
普通文档 CGI教程(3)怎样发回文档
普通文档 CGI教程(2)怎样从服务器
推荐文章
  • 此栏目下没有推荐文档
  • 第七章 CGI教程

    文章作者:佚名 录入时间:2006-6-2 来源:不详
    网站声明:本站的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出处和原始作者,文章版权归本网站与文章作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。


    上传文件是建立交互式网站的一个重要手段。一般来说,考虑到CGI程序的安全和一些敏感问题,服务器是不会轻易开放文件上传权利的。

        今天的程序是由WEBSITE1.1附带的一个upload.exe程序,由VB编写而成。所以我要讲的也就是VB写WIN-CGI时候的一些问题。

        VB写Win-CGI:

        在Windows环境下,WEB服务器和一个Windows CGI之间是通过临时文件来传送数据的。这个

        过程如下:

        1.Web服务器接受一个客户机对Windows CGI程序的请求,这个请求也称为Windows CGI请求。

        2.Web服务器把要传送给Windows CGI程序的数据放在一个叫CGI profile的主输入文件。在某些情况下,还会增加一个文件。

        3.Web服务器执行CGI程序,把CGI profile作为它的第一个参数。

        4.Windows CGI开始执行,服务器等待Windows CGI进程结束。在等待过程中,服务器还可以处理其他请求,比如另一个新的CGI进程或HTTP请求。

        5.Windows CGI程序读取作为命令行参数的profile文件并完成必要的处理,CGI程序也许要使用porfile文件中的数据和其他相关的辅助文件中的数据。

        6.在Windows CGI程序结束前,把它的应答写在profile文件指定的输出文件中。

        7.得到CGI程序处理结果后,WEB服务器读取输出文件,看看输出数据是否要打包,并把最后数据发给客户机。

        8.WEB服务器随后就删除处理这个请求时产生的临时文件。如果在服务器管理器注册时,不删除临时文件,则保留这些临时文件。总的说,基于文件的传输过程是比较古老的。但它是最常用的通讯方式。

        CGI32.BAS

        CGI32.BAS是给windows系列的使用者在VB4.0或更高的环境下开发Windows-cgi而写的一

        个程序接口。本文假设你已经对VB编程非常熟悉,所以对于使用VB的过程我就省略不说了。

        在写Win-CGI程序的时候,请将VB环境中的有效对象全部关掉(Custom controls),并将

        CGI32.bas加入project中。随后创建一个子程序

        CGI_Main()

        Sub CGI-Main()

        'Win-CGI程序内容end sub

        对于CGI32.bas,如果你还没有,请在这里下载。

        Sub Main()

        On Error GoTo ErrorHandler

        If Trim$(Command$) = "" Then ' Interactive start Inter_Main ' Call interactive main Exit Sub ' Exit the program End If

        InitializeCGI ' Create the CGI environment

        '=========== CGI_Main ' Execute the actual "script" '===========

        Cleanup:Close #CGI_OutputFN Exit Sub ' End the program '——ErrorHandler:Select Case Err ' Decode our "user defined" errors Case ERR_NO_FIELD:ErrorString = "Unknown form field" Case Else:ErrorString = Error$ ' Must be VB error End Select

        ErrorString = ErrorString & " (error #" & Err & ")" On Error GoTo 0 ' Prevent recursion ErrorHandler (Err) ' Generate HTTP error result Resume Cleanup '——End Sub

        上面是一个Win-cgi的例子。

  • 上一篇文档:

  • 下一篇文档:
  •     查找更多“第七章 CGI教程”的内容  
    相关连接
  • DOM的结构(1)

  • 巧用XML做多语言界面的FLASH

  • 在 Excel 2003 中创建 XML 映射(1)

  • WML——XML标记语言开发实例详细解析

  • RSS的语言编码大全