boa 移植与配置 [2013-12-30更新]

2023-05-16

编译环境:Ubuntu 10.04
arm-linux-gcc版本:4.5.3
- 移植步骤
1. 安装所需的软件包
# apt-get -y install byacc flex
---------------------------------------------------
2. 下载并解压最新源码包
官网: http://www.boa.org/
# tar -zxvf boa-0.94.13.tar.gz -C /usr/src/
---------------------------------------------------
3. 编译
# cd /usr/src/boa-0.94.13/src/
# ./configure
# vi Makefile +31
CC = arm-linux-gcc               // 修改31行
CPP = arm-linux-g++ -E           // 修改32行
# vi compat.h +120
修改
#define   TIMEZONE_OFFSET(foo)  foo##->tm_gmtoff
为(去掉foo后面的##)
#define   TIMEZONE_OFFSET(foo)  foo->tm_gmtoff
# vi boa.c +225
注释掉
if  (setuid(0)  !=  -1)  {
DIE("icky  Linux  kernel  bug!");
}
即修改为
#if   0
if  (setuid(0)  !=  -1)  {
DIE("icky  Linux  kernel  bug!");
}
#endif
# make
# arm-linux-strip boa
# arm-linux-strip boa_indexer
---------------------------------------------------
4. 参数配置
# vi ../boa.conf
(仅列出部分比较重要的参数)
Line 48: User root
Line 49: Group root
Line 62: ErrorLog /var/log/boa/error_log
Line 74: AccessLog /var/log/boa/access_log
Line 94: ServerName  www.your.org               // 必须取消原有的注释,否则boa无法启动
Line 111: DocumentRoot /var/www
Line 123: DirectoryIndex index.html
Line 130: DirectoryMaker /usr/sbin/boa_indexer
Line 155: MimeTypes /etc/mime.types
Line 164: CGIPath /bin:/usr/bin:/usr/local/bin
Line 193: ScriptAlias /cgi-bin/ /var/www/cgi-bin/
! ServerName 可任意修改
! DocumentRoot 指定目标板上用于存放html文件的根目录
---------------------------------------------------
5. 测试
! 文件放置的路径必须和配置文件指定的路径一致
(1) 拷贝boa.conf到目标板的/etc/boa目录;拷贝mime.types到目标板的/etc目录
(2) 拷贝boa、boa_indexer到目标板的/usr/sbin目录
(3) 在目标板创建所需的目录:
    # mkdir -p /var/www/cgi-bin
    # mkdir /var/log/boa
(4) 在目标板的/var/www目录下创建index.html,文件内容如下:
<html>
    <head><h3>BOA Test Page</h3></head>
    <body>
        Hello, BOA!
        <form action=/cgi-bin/test.cgi method=POST>
            <input type=submit name="OK" value="ok">
        </form>
    </body>
</html>
(5) 在目标板的/var/www/cgi-bin目录下创建test.cgi,文件内容如下
#!/bin/sh
echo Content-type: text/plain
echo
echo `/bin/date`
! 创建完成后赋予该文件可执行权限:
# chmod a+x /var/www/cgi-bin/test.cgi
# boa     // 启动boa
! boa启动成功后不会有任何提示,此时可在浏览器输入目标板的IP地址,效果如下图所示:
点击“ok”按钮后效果如下:
---------------------------------------------------
参考资料: http://blog.chinaunix.net/uid-22609852-id-3506504.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

boa 移植与配置 [2013-12-30更新] 的相关文章

  • 文件上出现了问号,怎么去掉问号呢?

    你这应该是svn造成桌面图标显示问号的 创建一个记事本文件 xff0c 然后吧这句话复制进去 for r a in do 64 if exist 34 a svn 34 rd s q 34 a svn 34 然后保存 xff0c 在吧记事本
  • 使用-verbose:gc输出JVM的GC情况

    Java应用启动时 xff0c 可以通过设置verbose参数来输出JVM的gc情况 xff0c 命令如下 xff1a java verbose gc 在Eclipse中可以通过Run As Run Configurations Argum
  • 安全点(Savepoint)

    在OopMap的协助下 xff0c HotSpot可以快速且准确地完成GC Roots枚举 xff0c 但一个很现实的问题随之而来 xff1a 可能导致引用关系变化 xff0c 或者说OopMap内容变化的指令非常多 xff0c 如果为每一
  • ros noetic catkin_make 失败解决方法

    问题 xff1a ros noetic catkin make 失败 xff1a base alex 64 ubuntu 16 04 catkin catkin make Base path home alex catkin Source
  • Linux离线安装MySQL

    1 卸载CentOS自带的mariadb lib xff08 执行rpm qa greo mariadb有对应信息才卸载 xff0c 没有不需要执行卸载 xff09 xff1a rpm qa grep mariadb rpm e nodep
  • 使用Hessian进行序列化

    无论是何种类型的数据 xff0c 最终都需要转换成二进制流在网络上进行传输 xff0c 那么在面向对象程序设计中 xff0c 如何将一个定义好的对象传输到远端呢 xff1f 数据的发送方需要将对象转换成为二进制流 xff0c 才能在网络上进
  • 无法连接虚拟设备ide1:0因为主机上没有相应的可用设备

    在VMware Workstation里面安装CentOS可能会遇到如下错误 xff1a 无法连接虚拟设备ide1 xff1a 0因为主机上没有相应的可用设备 解决办法 xff1a 关闭声卡 和 打印机 xff0c 然后再重新安装 xff0
  • TBSchedule HelloWorld

    淘宝官方参考手册 xff1a http code taobao org p tbschedule wiki index http www jianshu com p e66aa342f0d1 1 TBSchedule项目其实可以分为两部分
  • SpringBoot 使用 @Value 从 YAML文件读取属性

    在 YAML中有如下配置 paypal mode live 在类中 xff0c 通过 64 Value属性读取 64 Value 34 paypal mode 34 private String mode 程序运行时 xff0c 却报出错误
  • Virtualbox报错------> VirtualBox虚拟机下鼠标不正常的解决方法

    在Virtualbox虚拟机下 xff0c 突然发现鼠标使用不正常 出现2个鼠标 xff0c 一个是Ubuntu主机下面的鼠标 xff0c 一个是Window7下的鼠标 xff0c 但是Win7下的鼠标不可以看得到 xff0c 但是点击鼠标
  • 【浅墨著作】《逐梦旅程:Windows游戏编程之从零开始》勘误&配套源代码下载...

    I 39 m back 恩 xff0c 几个月不见 xff0c 大家还好吗 xff1f 这段时间真的好多童鞋在博客里留言说或者发邮件说浅墨你回来继续更新博客吧 woxiangnifrr童鞋说每天都在来浅墨的博客逛一下看有没有更新 xff0c
  • ubuntu 下 使用vmware 虚拟xp 声卡没声音 解决

    如果在ubuntu下听音乐 xff0c 会使用自带的声卡 之后再启动vmware 的xp xff0c 则会报 dsp设备找不到 解决方法 xff0c 进入首先项 xff0d xff0d 音效 xff0c 修改设备为realtek xff0c
  • HTML中的select下拉框内容显示不全的解决办法

    HTML中的select下拉框内容显示不全的解决办法 今天 xff0c 我遇到这样一个问题 xff1a 查询栏中的下拉框中的内容过长 xff0c 导致部分被覆盖了 查询了一些资料 xff0c 有的说用函数控制 xff0c 有的说用事件控制
  • 大学六年我读过的一些书

    明天就是2014年 xff0c 今晚是13年最后一天 xff0c 我想不少人会写一下自己13年的一些心得 xff0c 在上一篇日志中 xff0c 该总结的已经总结 xff0c 想了解更多的已经加我个人微信了 我在想 xff0c 大学其实很多
  • 【ubuntu】解决窗口管理器 不支持透明问题(11.04之前版本不支持)

    打开 Metacity 的混合特效 Metacity 为 GNOME 桌面环境的默认窗口管理器 我们知道在 GNOME 2 22 中的 Metacity 窗口管理器已经具有了混合特效 xff0c 换言之 xff0c 现在即使你不用 Comp
  • Android系统分析——Bootloader(Lk)

    1 Crt0 S2 bootable bootloader lk app Android系统分析 Bootloader Lk LK是android系统的bootloader xff0c 是系统启动后的最早入口点 xff08 排除另一个核心m
  • gnome 中修改桌面快捷方式图标

    KDE中 xff0c 直接右键属性即可修改图标 xff0c 在gnome中 xff0c 修改桌面 desktop文件的Icon值即可 有关详细的解析 xff0c 我在网上查到了一个文章 http www ibm com developerw
  • android 文件系统,创建单个文件大小有2G限制

    最近有碰到一个问题 xff0c 在使用 Camera 录相的时候 xff0c 录像文件大小达到 2G 时 xff0c 就自动保存了 起初以为是在代码中作了最大录像文件大小的限制 long maxFileSize 61 mStorageSpa
  • 为RT-N16刷DD-WRT系统

    RT N16就是传说中的华硕最高端的一款路由器了 xff0c 国内得一千多块 xff0c 国外也就7 8百吧 xff08 又是一个比别人挣的少 xff0c 成本比别人高的例子 xff09 DD WRT是一种可用于某些无线路由器的非商业的第三
  • 欢迎使用CSDN-markdown编辑器

    我和谁都不争 xff0c 和谁争 xff0c 我都不屑 xff1b 我爱大自然 xff0c 其次就是艺术 xff1b 我双手烤着生命之火取暖 xff0c 火萎了 xff0c 我也准备走了 本Markdown编辑器使用StackEdit修改而

随机推荐