免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1498 | 回复: 0
打印 上一主题 下一主题

嵌入式web服务器的移植 --boa [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-05 21:30 |只看该作者 |倒序浏览
由于嵌入式设备资源有限,且嵌入式web服务器通常只需一些简单的功能,因而有必要对web服务器的功能进行裁剪,使其占有较少的储存空间和内存空间、消耗较少的处理器资源。Boa就是这样的一个开放源码web服务器,它是一个支持单一任务的嵌入式web服务器,本身所占的空间很小,具有较高的性能,适用于嵌入式系统。同时,它支持CGI技术,用于实现动态web内容。
boa-0.94.13的移植和使用
首先从
http://www.boa.org/
上下载boa
#wget
http://www.boa.org/boa-0.94.13.tar.gz
# tar -zxf boa-0.94.13.tar.gz
# cd boa-0.94.13/src
#./configure  运行configure生成Makefile
#make   
编译会出现错误
util.c:99:1:pasting”t“and"->"does not give a valid preprocessing token
make:* * *[util.o]错误1
这是compat.h中的一个宏定义隐去的
#sed -i 's|#define TIMEZONE_OFFSET(foo)##->tm_gmtoff|#define TIMEZONE_OFFSET(foo)->tm_gmtoff|g' compat.h
除了这里还有一处在boa.c
sed -i 's|drop_privs();|//drop_privs();|g' boa.c
在make一下没报错就行了。
编译完后可以看到,在源代码目录下生成了一个名为boa的可执行文件。将其放入构建好的根文件系统中,并在etc/下面见一个boa目录,存放boa的配置文件boa.conf。
#cp boa /usr/sbin/
#mkdir -p /etc/boa
#vim /etc/boa/boa.conf
Port 80
DocumentRoot /var/www
MimeTypes /etc/mime.types
DefaultType text/plain
Errorlog /var/log/boa/error_log
CGIPath /bin:usr/bin:/usr/local/bin
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
#mkdir -p /var/www/var/log/boa /var/www/cgi-bin
自己写一个程序如我编写的九九乘法表jiujiu.c:
#include "stdio.h"
void main()
{
int i,j;
  printf("Content-type: text/html; charset=utf-8\n\n");
    printf("Linux小组\n");
for(i=1;i");
}
#gcc jiujiu.c -o jiujiu
#cp jiujiu /var/www/cgi-bin
#boa
然后在浏览器中输入域名就可以了。
http://localhost/cgi-bin/jiujiu
就可以看见网页中输出了一个九九乘法表。
《希望各位大虾,会弄那个u-boot的,可否指点一二,某再此谢啦!》

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/105209/showart_2112098.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP