boa服务移植 cgi的使用

转载 2011年01月19日 17:53:00

一.交叉编译boa-0.94.14rc21:
    1.1 解压boa_0.94.14rc21.orig.tar.gz,进入boa_0.94.14rc21
    执行:
    ./configure --build=i486-linux-gnu --host=mipsel-linux --prefix=/usr
    
    1.2 修改src下的Makefile
    vi Makefile
    修改 CC = gcc为:      CC = mipsel-linux-gcc
    修改 CPP = gcc - E为: CPP = mipsel-linux-gcc -E
    保存退出
   
    1.3 修改src/defines.h
    将#define DEFAULT_PATH "/bin:/usr/bin:/usr/local/bin"
    改为#define DEFAULT_PATH "/bin:/usr/bin:/var/www"
    保存退出
   
    1.4 在src下执行 make
    mipsel-linux-strip boa
    cp boa到开发板文件系统的 /usr/bin下

二、boa的配置
    2.1 在开发板的文件系统中操作:
    Boa需要在/etc目录下建立一个boa目录,里面放入Boa的主要配置文件boa.conf。
    在Boa源码目录下已有一个示例boa-0.94.14rc21/examples/boa.conf,可以在其基础上进行修改.
    boa.conf修改内容:
    User 0
    Group 0
    #DirectoryMaker /usr/lib/boa/boa_indexer
    CGIPath /bin:/usr/bin:/var/www/cgi-bin
    ScriptAlias /cgi-bin/ /var/www/cgi-bin/
    保存退出。

    2.2 在开发板的文件系统中创建下面的目录、文件:
    mkdir -p /var/log/boa
    mkdir -p /var/www/
    chmod 777 /var/www
    mkdir -p /var/www/cgi-bin
    chmod 777 /var/www/cgi-bin
    touch /etc/ld.so.preload
    touch /etc/ld.so.cache
    touch /var/run/.nscd_socket

    2.3从交叉工具链/opt/gcc-3.3.6-glibc-2.3.6/mipsel-linux/lib拷贝库文件到开发把的文件系统的/lib
    cp -av libnss_files.so libnss_files.so.2 libnss_files-2.3.6.so libnss_nis.so libnss_nis.so.2 libnss_nis-2.3.6.so libnss_nisplus.so libnss_nisplus.so.2   libnss_nisplus-2.3.6.so
    将mime.types文件复制到/etc目录下,通常可以从Linux主机的/etc目录下直接复制即可
三、cgi.html的配置
    3.1 交叉编译get.c  post.c
    在PC上操作:
    mipsel-linux-gcc -o get get.c
    mipsel-linux-gcc -o post post.c
    将生成的get  post拷贝到开发板文件系统,存放路径:/var/www/cgi-bin

    3.2 将cgi.html拷贝到开发板文件系统,存放路径:/var/www

四、运行boa
    在开发板上运行boa:  ./usr/sbin/boa

五、在IE地址栏中输入:(linux/windows均可)
    http://开发板ip地址/cgi.html
 

ps:还有一种方法  c语言写的html
hellocgi.c
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
     printf("Content-type:text/html/n/n");
     printf("<html>/n");
     printf("<head><title>CGI Output</title></head>/n");
     printf("<body>/n");
     printf("<h1>HELLO,WORLD.</h1>/n");
     printf("<body>/n");
     printf("</html>/n");
     exit(0);
     }

然后把它编译成CGI可执行程序
mipsel-linux-gcc -o helloCGI helloCGI.c

cp helloCGI /nfsroot/rootfs/var/www/cgi-bin

然后在IE里面输入:
http://192.168.4.128/cgi-bin/helloCGI
可以看到  HELLO WORLD 说明boa成功运行

相关文章推荐

linux下CGIC/CGI和BOA开发小记

CGI网页用于配置系统参数,减少了客户直接配置内核文件的复杂过程

boa cgi html

随着Internet技术的兴起,在嵌入式设备的管理与交互中,基于Web方式的应用成为目前的主流,这种程序结构也就是大家非常熟悉的B/S结构,即在嵌入式设备上运行一个支持脚本或CGI功能的Web服务器,...

boa cgi html CGIC

转载自:http://blog.csdn.net/jemofh159/article/details/7919740 随着Internet技术的兴起,在嵌入式设备的管理与交互中,基于Web方式的...

boa-0.94.13:Hello CGI

CGI是什么          CGI全称是CommonGateway Interface,简称CGI,中文名叫做通用网关接口。 CGI程序就是符合CGI接口规范的程序,相对于WebServer来说也...

CGI C上传文件以及大小限制修改

CGI C上传文件以及大小限制修改   BOA+CGIC,发现用它那个测试程序上传文件时只能传1MB大小左右,后来搜索网络,发现是BOA搞的鬼,方法2种: 1、修改源代码的de...

boa,cgi 应用过程经验总结(404,502错误解决)

一,在var/www中打开了基本信息设置这个html文件,然后表单内容提交给comment.cgi,又是出现了404,not found,The requested URL /var/www/cgi-...

嵌入式Linux上通过boa服务器实现cgi/html的web上网(转)

  嵌入式Linux上通过boa服务器实现cgi/html的web上网简介: 第一步 Boa程序的移植 1.下载Boa源码 2、生成Makefile文件 3、修改Makefile文件 4、...

linux下 boa cgi移植(转)

http://blog.chinaunix.net/u1/33226/showart_485155.html嵌入式WEB服务器常见的有lighttpd shttpd thttpdboa mathopd...

飞凌OK6410板boa移植 同时还有cgi程序测试

大家都知道飞凌自带的移植的boa

cgi程序

1、头文件     #include   2、while(FCGI_Accept()>=0)//这里进入循环,前台每请求一次fcgi服务,就循环一次      循环内处理:      ch...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:boa服务移植 cgi的使用
举报原因:
原因补充:

(最多只允许输入30个字)