cgi 规范
cgi命令行选项规范
命令行只用在isindex查询的情况。它不使用在html表单或者任何没定义的查询类型中。服务器应该为一个没有编码的=字符搜索信息来决定是否命令行被使用了,如果它发现了,命令行就不使用。这个就委托客户端在isindex查询中编码等于号,这个被认为是安全的。
下面举个例子,使用网络命令和isindex界面来观察"httpd"。你将会看到脚本会自动利用/cgi-bin/finger?httpd来调用它本身并且将会在命令行执行"finger httpd" ,还会为你输出结果。
如果服务器没有在query_string找到"=" ,那么命令行不会被使用,任何的解码也没有被执行。这个查询利用适当的form提交解码器来维持于处理的联系。同时,作为一个例子,可以为提交"httpd=name"使用超级连接到网络指令脚本。因为query_string包含了一个未编码的"=",所以没有被解码,这个脚本不知道它提交了一个有效的查询,而只是给你一个缺省的网络指令表单。
如果服务器发现它因为内部限制(比如exec()或者/bin/sh命令行限制)儿不能发送字符串,服务器应该包含no命令行信息并且提供没有解码的查询信息在环境变量query_string中。
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 注册表 操作系统 服务器 应用服务器