share.rar
(5.59 KB, 下载次数: 121)
这个包里面是关于boa的conf设置文件 boa的执行文件大家可以动手自己按照下面教程 自己来做boa二进制文件,说明下conf文件里面的设置信息大家最好也就不要改了 因为真的不知道一改会发生什么事情 我大概说下按照我写的conf文件的设置目录
1.conf放在etc/boa里面
2.在根底下建立一个www的文件夹里面在建一个cgi-bin的文件夹
3.把我提供的armhello这个文件(cgi执行文件)放在cgi-bin文件夹里 并且改名字为hello
4,把我提供的index.html文件放在www目录底下
5.执行你编译好的boa二进制文件 服务器正常开始启动,如果报错 请核实以上步骤
6,确保你的开发板网线已经插在路由器上面,你的测试电脑也插在上面
7,设置你的电脑ip和开发板ip为同一个网段,,如:开发板ip: 192.168.1.102 那么你的电脑ip应该为 192.168.1.XX(2-254)
8,在你的电脑浏览器上面输入你的开发板ip ,此时应该正常显示服务器中www/index.html里面的内容
9,点击网页中的按钮,cgi程序,执行,显示·········· helloworld 我的cgi··········,这里注意一定要确保中文显示正常,因为我在编写cgi的时候,输出的 浏览器编码格式是UTF-8 应该是支持全球语言的。
说明建立文件夹的操作皆为arm开发平台,不是pc平台 谨记······
现在说下怎么编译boa源代码
# tar -zxvf boa-0.94.13.tar.gz 2)在src目录下运行./configure 3)生成Makefile文件,修改 CC = arm-linux-gcc CPP = arm-linux-gcc–E (1)将boa.c文件中以下几行判断去掉即可。 if (setuid(0) != -1) {
DIE("icky Linux kernel bug!");
} |
(2) 修改文件compat.h P120 #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
修改成
#define TIMEZONE_OFFSET(foo) (foo)->tm_gmtoff (3) 把src文件夹下的config.c里的if(!server_name){..........}(大概在266行到286行之间)注释掉 否则 Error: ./boa gethostbyname:: Resourcetemporarily unavailable (4)修改 src/log.c
注释掉
if(dup2(error_log, STDERR_FILENO) == -1) {
DIE("unableto dup2 the error log");
}
否则会出现错误:
log.c:73 unableto dup2 the error log:bad file descriptor
4)make 5)执行arm-linux-strip boa 去掉调试信息,小很多,50多k 编译出boa为可执行文件,在src目录地下
如果你觉得直接交叉调试,存在一定不方便原因,那么可以先生成gcc版本的boa在我们虚拟机上面搭建,我提供的conf文件通用,只不过 建立文件夹那些工作 请在虚拟机中完成,目录设置依然不变,如果虚拟机中boa运行成功 那么就可以进行真正的移植工作了。
|