cgi 规范
cgi脚本输入规范
为了请求哪个有信息附在文件头后面,比如http post或者put,信息将被发送到脚本的stdin中。
服务器将要发送content_length 字节到这个文件描述器中。这里记住它还会给出数据的content_type。服务器有义务在脚本读了content_length的字节之后发送文件的结束标识。
cgi 脚本输出规范
脚本发送它的输出到stdout。这个输出可以是有脚本产生的文档,还可以是用于检索输出的服务器的指令。
以下是脚本命名的约定:
通常,脚本产生输出并发送回给客户端。这样做的好处是脚本不需要每一个请求发送一个完整的http/1.0文件头。有些脚本可以想避免服务器解析输出的额外开销,而直接通知客户端。为了从其它脚本中辨认出这些脚本,cgi要求如果脚本不想服务器解析它的文件头,脚本的名字要以nph-开头。在这个例子中,脚本的责任是返回一个响应给客户端的有效的http/1.0(或者http/0.9)。
以下解析文件头:
脚本的输出是以一个小文件头开始的。这个文件头包含了文本行,这个文本行和http文件头格式是一样的,它是以一个空行来结束的。任何的文件头(不是服务器指令)被直接发送给客户端。当前, 这个规范定义了三个服务器指令:
content-type :这是一个你返回的文档的mime类型。
location :它用于指定你想返回引用的服务器给文档,而不是真正的文档。如果这个的参数为url,服务器件将重定向到客户端。如果这个的参数是一个虚拟目录,服务器将检索指定的文档就象客户原来已经请求那个文档。?指令在这里将起作用,而#指令必须重定向到客户端。
status :它将用于给服务器一个http/1.0状态行以发送给客户端。它的格式为nnn xxxxx,其中nnn是一个三位数的状态码,而xxxx是原因字符串,比如"forbidden"。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器