利用boa服务器测试arm开发板上的cgi和html联合编程的小例程。很简单,但是当时觉得很有意思。在这里给大家展示一下,高手飘过。 
  
 

 
 
在ubuntu下安装boa测试环境,即先在本地搭建一个boa的网页服务器。apt-get install boa。稍作配置即可。我的Boa按照默认配置www网页放在/var/www目录,而cgi脚本放在/usr/lib/cgi-bin目录
下面以一个示例较少cgi和html的配合使用
 
 
 
<html><head><title>Title of page</title></head>
<body><form ACTION="cgi-bin/mult.cgi">              
#这里指示cgi脚本的路径<P>请在下面填入乘数和被乘数,按下确定后可以看到结果。
<INPUT NAME="m" SIZE="5" ><INPUT NAME="n" SIZE="5" ><BR><INPUT TYPE="SUBMIT" values="确定"></form ></body> 
</html>将文件该名称为Index.html放在www目录
而mult.cgi代码如下:
 
    #include <stdio.h>  #include <stdlib.h>  int main(void)  {  char *data;  long m,n;  printf("Content-Type:text/html;charset=utf-8\n\n");  printf("<html>\n");  printf("<head>\n<title>乘法结果</title>\n</head>\n");  printf("<body>\n");data = getenv("QUERY_STRING");  if(data == NULL)  printf("<P>错误!数据没有被输入或者数据传输有问题</p>");  else if(sscanf(data,"m=%ld&n=%ld",&m,&n)!=2)  printf("<P>错误!输入数据非法。表单中输入的必须是数字。</p>");  else printf("<P>%ld和%ld的成绩是:%ld。",m,n,m*n);  printf("</body>\n");printf("</html>\n");  return 0;  }  使用gcc将以上代码编译之后,将可执行文件该名称为mult.gci,放 /usr/lib/cgi-bin目录 可以参考以上代码,功能就是提供两个输入框,用户输入之后,点击确定提交之后,返回计算结果。
 
一个很值得关系的问题是用户浏览器的网页怎么和服务器上的cgi脚本交互,在我们点击提交之后,会发现在浏览器的地址栏有下面的字样:
 

mult.cgi?m=254&n=321这就是浏览器向服务器传递的数据,m=254 n321,上述写法是标准格式。