1.下载官方网站

http://www.boa.org/

我下载的是0.94.13版本

2.解压

tar -zxvf boa-0.94.13.tar.gz

3.进入src目录

./configure

配置一下生成makefile文件

4.修改makefile

CC = gcc 
CPP = gcc -E

改为

CC = arm-none-linux-gnueabi-gcc
CPP = arm-none-linux-gnueabi-gcc -E

5.修改 src/compat.h
 #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
 ->#define TIMEZONE_OFFSET(foo) foo->tm_gmtoff
 修改错误util.c:100:1: error: pasting "t" and "->" does not give a valid preprocessing token

6.修改src/boa.c
   DIE("icky Linux kernel bug!"); -> ;//DIE("icky Linux kernel bug!");
 boa.c:226 - icky Linux kernel bug!: Success(这个错误要查看后面提到error_log文件才能发现)

7.make

编译生成boa文件

8.将boa文件拷贝到目标文件系统的/bin目录下

9.进入目标文件系统,创建/etc/boa目录

10.拷贝压缩包解压目录下的boa.conf 文件到/etc/boa目录下

11.修改boa.conf文件
 User nobody -> User root
 Group nogroup -> Group 0
 MimeTypes /etc/mime.types -> MimeTypes /etc/boa/mime.types
 ErrorLog /var/log/boa/error_log -> ErrorLog /etc/boa/error_log
 AccessLog /var/log/boa/access_log -> AccessLog /etc/boa/access_log
 DocumentRoot /var/www -> DocumentRoot /etc/boa/html
 #ServerName www.your.org.here -> ServerName www.your.org.here
  错误:gethostbyname:: Resource temporarily unavailable
 ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ ->ScriptAlias /cgi-bin/ /etc/boa/cgi-bin/

12.目标文件系统中创建/etc/boa/html目录 修改属性777

13.拷贝index.html主页到/etc/boa/html目录下 chmod a-x *.html修改属性
 错误:403 Forbidden The requested URL '/' resolves to a file which is marked executable but is not a CGI file; retrieving it is forbidden.

14.修改启动脚本 添加boa &

15.目标文件系统/etc/boa目录下创建access_log error_log文件 属性777

16.目标文件系统/etc/boa目录下创建cgi-bin目录

17.复制ubuntu /etc/mime.type文件到目标板/etc/boa下
 错误:Could not open mime.types file, "/etc/mime.types", for reading

18.Port 80 -> Port 8080 那么测试地址xxx.xxx.xxx.xxx:8080
 错误:unable to bind: Address already in use(这个错误要查看error_log文件才能发现)

如果不存在错误则port 80可以,那么测试地址为ip地址xxx.xxx.xxx.xxx

web服务器boa的移植的更多相关文章

  1. 嵌入式web服务器BOA的移植及应用

    嵌入式web服务器子系统 一.嵌入式web服务器的控制流程 如下图所示,嵌入式web服务器可实现通过网络远程控制嵌入式开发板,便捷实用. 控制流程:浏览器 --->>>嵌入式开发板 ...

  2. [置顶] ARM-Linux下WEB服务器Boa的移植、配置和运行测试

    Linux下使用的轻量级WEB服务器主要有:lighttpd.thttpd.shttpd和boa等等,而Boa是使用最为广泛的轻量级WEB服务器之一(当然,阿帕奇是世界使用排名第一的Web服务器软件) ...

  3. 嵌入式web服务器BOA+CGI+HTML+MySQL项目实战——Linux

    准备环境操作系统: Ubuntu12.04 LTS环境搭建: 需要 BOA,Apache,CCGI,MySQL,GCC[Linux下嵌入式Web服务器BOA和CGI编程开发][数据库的相关知识——学习 ...

  4. 嵌入式开发之web服务器---boa移植

    近段时间在做ti8148的编解码器又涉及到boa web服务器的移植.在移植到ARM开发板的过程中,遇到很多的问题.原先的自带thttpd 由于功能没有boa完善,比如在ubuntu下面的utf-8编 ...

  5. 嵌入式Web服务器boa在ARM平台的移植步骤

    1.下载http://www.boa.org/ 2.解压tar xzf boa-0.94.13.tar.gz 3.编译cd boa-0.94.13/src./configure 生成了makefile ...

  6. Linux下嵌入式Web服务器BOA和CGI编程开发

    **目录**一.环境搭建二.相关配置(部分)三.调试运行四.测试源码参考五.常见错误六.扩展(CCGI,SQLite) # 一.环境搭建操作系统:Ubuntu12.04 LTSboa下载地址(但是我找 ...

  7. 嵌入式web服务器-thttpd

    交叉编译thttpd http://lakie.blog.163.com/blog/static/45185220201162910432330/ thttpd安装与调试 http://blog.cs ...

  8. 三种嵌入式web服务器(Boa / lighttpd / shttpd)的 linux移植笔记

    一:移植Boa(web服务器)到嵌入式Linux系统 一.Boa程序的移植 1.下载Boa源码    下载地址: http://www.boa.org/    目前最新发行版本: 0.94.13   ...

  9. boa web服务器

      Boa是一种非常小巧的Web服务器,其可执行代码只有大约60KB左右.作为一种单任务Web服务器,Boa只能依次完成用户的请求,而不会fork出新的进程来处理并发连接请求.但Boa支持CGI,能够 ...

随机推荐

  1. js自定义鼠标右键菜单

    document.oncontextmenu = function(e) { return false; } document.onmousedown = function(e) { switch(e ...

  2. git —— 异常1,index.lock

    git提交过程中出现的问题 解决方法:找到 index.lock文件将其删除 一般 index.lock 在.git下面, 有时 .git 是隐藏的,但是无论怎样, 可以通过 everything 找 ...

  3. 移动端,PC端,微信等常用平台和浏览器判断

    var wzw={ //浏览器相关信息 //android webview 需要app进行支持,Android web view初始化时,在navigator中添加标识 browser:{ versi ...

  4. Java模拟按键

    JDK自带了Robot类,此类用于为测试自动化.自运行演示程序和其他需要控制鼠标和键盘的应用程序生成本机系统输入事件.Robot 的主要目的是便于 Java 平台实现自动测试. 详情可查看jdk1.6 ...

  5. PHP性能调优---php-fpm - 启动参数及重要配置详解

    约定几个目录/usr/local/php/sbin/php-fpm/usr/local/php/etc/php-fpm.conf/usr/local/php/etc/php.ini 一,php-fpm ...

  6. **PHP foreach 如何判断为数组最后一个最高效?

    http://www.zhihu.com/question/20158667 其他方法: $list = array('a', 'b', 'c'); foreach($list as $k=>$ ...

  7. 30 最小的k个数

    输入n个整数,找出其最小的k个数,例如输入4,5,1,6,2,7,3,8,最小的4个数为1,2,3,4 解法一:快排思想,会改变原数组    O(n) 注意是vector<int>& ...

  8. InterSystems Ensemble学习笔记(一) Ensemble介绍及安装

    系列目录 InterSystems Ensemble学习笔记(一) Ensemble介绍及安装InterSystems Ensemble学习笔记(二) Ensemble创建镜像, 实现自动故障转移 一 ...

  9. Android Activity、Service、BroadcastReceiver 的生命周期

    Activity.Service.BroadcastReceiver这三个组建是Android开发中最常使用到的组件,在它们的生命周期的各个阶段我们需要针对性的做些事情,了解这些组件的生命周期有利于我 ...

  10. Proxy 代理

    意图 为其他对象提供一种代理以控制对这个对象的访问 动机 对一个对象进行访问控制的原因是为了只有在我们确实需要这个对象时才对它进行创建和初始化 典型例子:智能指针的实现,通过引用计数来决定“=” 复制 ...