Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4213745
  • 博文数量: 1148
  • 博客积分: 25453
  • 博客等级: 上将
  • 技术积分: 11949
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-06 21:14
文章分类

全部博文(1148)

文章存档

2012年(15)

2011年(1078)

2010年(58)

分类: 嵌入式

2011-04-07 20:10:15

参考:tq移植手册
      tek 大侠博客
      天行健的Blog1.移植boa软件    1.下载:  最新的是boa-0.94.13.tar.gz
    2.解压:tar zxfv boa-0.94.13.tar.gz 如果出错,去掉v
    3.cd /boa-0.84.13/src
    4. ./configure
    5.vim Makefile
         CC=arm-linux-gcc
         CPP=arm-linux-gcc -E
    6.vim src/boa.c  在行225到227 之间,注释掉
      if(setuid(0)!==-1){
                     DIE("icky linux kernel bug");
       }
    7.vim src/compat.h 120行
      #define TIMEZONE_OFSET(foo) foo->tm_gmtoff
     
    8.编译  make
    9.arm-linux-strip boa 去掉 调试信息
 
2.移植cgic库
  1.下载:
  2.解压  tar zxfv cgic205.tar.gz 如果出错,去掉v
  3.cd cgic205
  4.vim Makefile
  
  1. CFLAGS=-g -Wall
  2. CC=arm-linux-gcc  ###这里修改
  3. AR=arm-linux-ar
  4. RANLIB=arm-linux-ranlib
  5. LIBS=-L./ -lcgic

  6. all: libcgic.a cgictest.cgi capture

  7. install: libcgic.a
  8.     cp libcgic.a /home/ywx/arm-cross/arm-2010.09/arm-none-linux-gnueabi/libc/armv4t/lib  ##这里修改
  9.     cp cgic.h /home/ywx/arm-cross/arm-2010.09/arm-none-linux-gnueabi/libc/usr/include    ##这里修改
  10.     @echo libcgic.a is in /usr/local/lib. cgic.h is in /usr/local/include.

  11. libcgic.a: cgic.o cgic.h
  12.     rm -f libcgic.a
  13.     $(AR) rc libcgic.a cgic.o
  14.     $(RANLIB) libcgic.a

  15. #mingw32 and cygwin users: replace .cgi with .exe

  16. cgictest.cgi: cgictest.o libcgic.a
  17.     $(CC) $(CFLAGS) cgictest.o -o cgictest.cgi ${LIBS}  ###这里修改

  18. capture: capture.o libcgic.a
  19.     $(CC) $(CFLAGS) capture.o -o capture ${LIBS}   ####这里修改

  20. clean:
  21.     rm -f *.o *.a cgictest.cgi capture
  5.make
  6.arm-linux-strip capture

3.配置 boa
   1.复制 cp ../boa-0.94.13/src/boa /opt/me_linux/root-2.6.33/sbin/
          cp ../boa-0.94.13/boa.conf /opt/me_linux/root-2.6.33/etc/boa/
          相应的文件夹要自己建立
   2.vim boa.conf boa_conf.rar  下载后,解压文件,修改为boa.conf
     这里列出重要的选项
     
  1. DocumentRoot /web       这是存放HTML文档的主目录。
 DirectoryIndex index.html   HTML目录索引的文件名

 ScriptAlias /cgi-bin/ /web/cgi-bin/  

指明CGI脚本的循迹路径对应的时间路径。一般所有的CGI脚本都要放在实际路径里,用户访问执行是输入站点+虚拟路径+CGI脚本名。前面的/cgi-bin/就是虚拟路径,/web/cgi-bin就是实际的路径
   4.cp /etc/mime.types /opt/me_linux/root-2.6.33/etc


3.配置 cgic 库
   
 1.cd root-2.6.33/web   可以存放 html 文档
 2.mkdir cgi-bin  #这个文件夹就是存放 cgi
 3.cp ../cgic205/capture /opt/me_linux/root-2.6.33/web/cgi-bin/
   cp ../cgic205/cgictest.cgi /opt/me_linux/root-2.6.33/web/cgi-bin/
   cp  index.html ../root-2.6.33/web/index.html
   index.html 是我的 chinaunix微博的主要内容

   注意这里的 后缀名, 是 html

 
4.执行
  1. [root@yuweixian /]# /etc/rc.d/init.d/httpd start
  2. [01/Jan/1970:00:00:29 +0000] boa: server version Boa/0.94.13
    [root@yuweixian /]# [01/Jan/1970:00:00:29 +0000] boa: server built Apr  7

    2011 at 18:02:48.
    [01/Jan/1970:00:00:29 +0000] boa: starting server pid=915, port 80
  说明为什么使用 上面的命令呢??
  在建立文件系统是,etc/rc.d/init/httpd 的内容是:
  它是 boa 的一个代理,可以说是一个快捷方式吧
  1. #!/bin/sh

  2. base=boa

  3. # See how we were called.
  4. case "$1" in
  5.   start)
  6.         /sbin/$base
  7.         ;;
  8.   stop)
  9.     pid=`/bin/pidof $base`
  10.     if [ -n "$pid" ]; then
  11.         kill -9 $pid
  12.     fi
  13.         ;;
  14. esac

  15. exit 0


   2.当我输入 192.168.1.6时,服务器提示信息,表示数据发送,但是显示 No such file or directory 因为我没有这些图像和文本在本地服务器上,
  1. [root@yuweixian /]# [01/Jan/1970:00:00:44 +0000] request from 192.168.1.7

  2. "GET /source/script_cookie.js HTTP/1.1" ("/web/source/script_cookie.js"):

  3. document open: No such file or directory
  4. [01/Jan/1970:00:00:44 +0000] request from 192.168.1.7 "GET

  5. /source/script_common.js HTTP/1.1" ("/web/source/script_common.js"): document

  6. open: No such file or directory
  7. [01/Jan/1970:00:00:44 +0000] request from 192.168.1.7 "GET

  8. /source/script_menu.js HTTP/1.1" ("/web/source/script_menu.js"): document

  9. open: No such file or directory
  10. [01/Jan/1970:00:00:44 +0000] request from 192.168.1.7 "GET

  11. /source/script_ajax.js HTTP/1.1" ("/web/source/script_ajax.js"): document

  12. open: No such file or directory
  13. [01/Jan/1970:00:00:44 +0000] request from 192.168.1.7 "GET

  14. /source/script_face.js HTTP/1.1" ("/web/source/script_face.js"): document

  15. open: No such file or directory









阅读(2519) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~