天嵌 ARM开发社区

 找回密码
 注册
查看: 4020|回复: 6

BOA服务器的搭建

[复制链接]
mxdaiyi 发表于 2009-8-21 15:00:40 | 显示全部楼层 |阅读模式
本帖最后由 mxdaiyi 于 2009-8-21 15:02 编辑

Boa在PC平台上开发环境的搭建
STEP 1:
# cd boa-0.94.13-i386/src
# ./configure
# make

STEP 2:
在/etc目录下建立一个boa目录,在里面放置Boa的主要配置文件boa.conf,可以从Boa-0.94.13-i386下拷贝,修改配置文件如下:
Group nogroup 修改为 Group 0
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin 修改为 ScriptAlias /cgi-bin/ /var/www/cgi-bin
其它采用默认设置。

STEP 3:
建立日志文件所在目录,/var/log/boa
建立HTML文档所在目录,/var/www,将静态网页存入该目录(可将主机/usr/share/doc/HTML目录下的index.html文件和img目录复制到/var/www目录下)。
建立CGI脚本所在目录/var/www/cgi-bin,将cgi脚本放在该目录下。

STEP 4:测试
在虚拟机上运行Boa程序,在Windows中打开IE,输入http://192.168.1.8,即打开/var/www/index.html。
拷贝boa-0.94.13-i386/examples/cgi-test.cgi到/var/www/cgi-bin目录下,在Windows IE中输入http://192.168.1.8/cgi-bin/cgi-test.cgi,可打开Boa CGI test

Boa在ARM平台上的移植

STEP 1:
# cd boa-0.94.13-arm/src
# ./configure
修改Makefile文件,
将CC=gcc改为CC=arm-linux-gcc
将CPP = gcc –E 改为CPP=arm-linux-gcc –E

#make
在这一步用3.4.1和3.3.2交叉编译器时均出现如下错误:
util.c: 100: 1: pasting “t” and “->” does not give a valid preprocessing token make: [util.o] Error1
换成2.95.3交叉编译器后,编译通过。
另一种解决办法是把compat.h中的 foo##->tm_gmtoff的##去掉。

#arm-linux-strip boa    //去掉调试信息

STEP 2:
Boa需要在/etc目录下建立一个boa目录,里面放置Boa的主要配置文件boa.conf,Boa源码下已经有一个示例boa.conf,可以在其基础上修改,主要改动如下:
Group nogroup 修改为 Group 0
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 修改为 ScriptAlias /cgi-bin/ /var/www/cgi-bin/
ServerName www.baidu.com    去掉这一行的注释,网址可任意。如不去掉这行的注释,会出现如下错误:
gethostbyname:: Resource temporarily unavailable错误。

STEP 3:
创建日志文件所在目录/var/log/boa,创建HTML文档的主目录/var/www,将静态网页存入该目录下(可将主机/usr/share/doc/HTML/目录下的index.html文件和img目录复制到/var/www目录下)。
创建CGI脚本所在目录/var/www/cgi-bin,将cgi的脚本存放在该目录下。
另外还要将mime.types文件复制到/etc目录下,通常可以从Linux主机的/etc目录下直接复制即可。

STEP 4:
将Boa可执行文件复制到根文件系统/usr/bin目录下,烧写根文件系统。

STEP 5:
注意:在运行Boa前要把/var/log/boa挂载上ramfs文件系统,使其可写,否则出现如下错误:
log.c:73 – Unable to dup2 the error log: Bad file r.
在实验箱上运行Boa,在主机IE上输入http://192.168.1.10http://192.168.1.10/cig-bin/helloworld.cgi 可看到网页。
xlj2004 发表于 2009-8-24 13:15:09 | 显示全部楼层
将CC=gcc改为CC=arm-linux-gcc
将CPP = gcc –E 改为CPP=arm-linux-gcc –E
与手册所说的不一致
将CC=gcc改为CC=arm-linux-gcc
将CPP = gcc –E 改为CPP=arm-linux-g++ –E

到底是哪个对呢?
亚瑟王 发表于 2009-8-26 13:01:35 | 显示全部楼层
貌似没有.cpp的源码,两种都是可以的。
oct20040821 发表于 2009-9-28 17:31:31 | 显示全部楼层
Boa在PC平台上开发环境的搭建
STEP 1:
# cd boa-0.94.13-i386/src
# ./configure
# make

STEP 2:
在/etc目录下建立一个boa目录,在里面放置Boa的主要配置文件boa.conf,可以从Boa-0.94.13-i386下拷贝,修改配置文件如下:
Group nogroup 修改为 Group 0
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin 修改为 ScriptAlias /cgi-bin/ /var/www/cgi-bin
其它采用默认设置。

STEP 3:
建立日志文件所在目录,/var/log/boa
建立HTML文档所在目录,/var/www,将静态网页存入该目录(可将主机/usr/share/doc/HTML目录下的index.html文件和img目录复制到/var/www目录下)。
建立CGI脚本所在目录/var/www/cgi-bin,将cgi脚本放在该目录下。

STEP 4:测试
在虚拟机上运行Boa程序,在Windows中打开IE,输入http://192.168.1.8,即打开/var/www/index.html。
拷贝boa-0.94.13-i386/examples/cgi-test.cgi到/var/www/cgi-bin目录下,在Windows IE中输入http://192.168.1.8/cgi-bin/cgi-test.cgi,可打开Boa CGI test
oct20040821 发表于 2009-9-28 17:54:20 | 显示全部楼层
我完全按照楼主的步骤做(PC平台),但是确访问不到。我查看 /var/log/boa/error_log 里面的提示错

误是这样的:     [12/Sep/2009:10:2:54 +0000] boa.c:194 - unable to bind: Address allready in use

我用ps查看了一下 ps的结果如下
[root@localhost src]# ps
PID TTY                  TIME CMD
3092 pts/1 00:00:01 bash
4694 pts/1 00:00:00 ps
[root@localhost src]#
不知道楼主有没有碰到过这样的问题,请各位大位帮忙看看,小弟在此先谢啦。
我的Q 744615706
liuziyi 发表于 2010-7-29 17:46:43 | 显示全部楼层
5# oct20040821

我的问题和你一样,我也等着呢...郁闷好几天了都...
亚瑟王 发表于 2010-8-2 15:10:08 | 显示全部楼层
建议5楼和6楼再仔细看看TQ2440的Linux移植教程中的boa的移植章节。附录中的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2024-9-28 03:15 , Processed in 1.028359 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表