明远智睿技术论坛

 找回密码
 立即注册
搜索
查看: 4334|回复: 0
打印 上一主题 下一主题

移植boa Web服务器到EK200

[复制链接]

14

主题

19

帖子

384

积分

中级会员

Rank: 3Rank: 3

积分
384
跳转到指定楼层
楼主
发表于 2019-6-19 15:32:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 myzr_soft 于 2019-8-7 08:44 编辑

主机平台: UBUNTU14.04
硬件平台:明远智睿MY-IMX6-EK200-6Q-1G
内核版本 :linux-4.1.15
交叉编译链:arm-poky-linux-gnueabi
文件系统:L4115-fsl-image-qt5-myimx6a9.tar.bz2
介绍:
MY-IMX6-EK200-6Q-1G 对应 EK200是板级,6Q是CPU类型,1G是内存

下载boa源码包
下载地址: http://www.boa.org/
我下载的版本为:0.94.13 :
解压:
$ tar xzvf boa-0.94.13.tar.gz
source 工具链配置文件
$ source /home/myzr/my-work/03_toolchain/fsl-imx-fb-glibc-x86_64-meta-toolchain-qt5-cortexa9hf-neon-toolchain-4.1.15-2.1.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi
安装需要工具bison,flex
$ sudo apt-get install bison flex
修改src/compat.h
将 #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
修改成 #define TIMEZONE_OFFSET(foo) (foo)->tm_gmtoff
修改 src/log.c
注释掉
if (dup2(error_log, STDERR_FILENO) == -1) {
                         DIE("unable to dup2 the error log");
                   }
为:
/*if (dup2(error_log, STDERR_FILENO) == -1) {
                         DIE("unable to dup2 the error log");
                   }*/
修改src/boa.c
注释掉下面两句话:
if (passwdbuf == NULL) {
        DIE(”getpwuid”);
        }
        if (initgroups(passwdbuf->pw_name, passwdbuf->pw_gid) == -1) {
        DIE(”initgroups”);
        }
#if 0
        if (passwdbuf == NULL) {
        DIE(”getpwuid”);
        }
        if (initgroups(passwdbuf->pw_name, passwdbuf->pw_gid) == -1) {
        DIE(”initgroups”);
        }
        #endif

注释掉下面语句:
if (setuid(0) != -1) {
                        DIE(”icky Linux kernel bug!”);
        }
#if 0
         if (setuid(0) != -1) {
                        DIE(”icky Linux kernel bug!”);
                }
#endif
生成Makefile文件
执行:
$ cd boa-0.94.13/src
$ ./configure
$ make
然后为生成的二进制文件boa瘦身
$ arm-poky-linux-gnueabi-strip boa
$ cd ..
$ vi boa.conf

修改 Group nogroup
为 Group 0

修改 User nobody
为 User 0

修改ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
为 ScriptAlias /cgi-bin/ /www/cgi-bin/

修改DocumentRoot  /var/www
为DocumentRoot  /www

修改#ServerName www.your.org.here
ServerName www.your.org.here

修改AccessLog /var/log/boa/access_log
为#AccessLog /var/log/boa/access_log
以下步骤在开发板上进行:
创建目录/etc/boa并且把ubuntu下的boa 和 boa.conf拷贝到这个目录下,将ubuntu下/etc/mime.types拷贝到开发板根文件系统的/etc下
# mkdir /etc/boa
将boa拷贝到/etc/boa后获取权限
# chmod  777 /etc/boa
随后将boa文件移到/bin上
# mv  /etc/boa /bin
创建HTML文档的主目录/www
# mkdir /www
创建CGI脚本所在录 /www/cgi-bin
# mkdir /www/cgi-bin
将需要展示的网页名称改为index.html 拷贝到开发板www目录下
执行boa
# boa
打开一个浏览器输入开发板ip看看效果

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|明远智睿  

GMT+8, 2024-4-19 16:40 , Processed in 0.060166 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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