嵌入式ARM移植boa服务器

BOA服务器移植

平台: 处理器:I.MX6ULL 内核:linux-4.1.15

1.解压源码

先下载boa服务器源码,执行以下命令

    tar xvf boa-0.94.13.tar.tar
    cd boa-0.94.13

2.进入src目录

执行命令./configure -->生成Makefile文件
修改Makefile文件
修改CC = gcc 为 CC = arm-linux-gnueabihf-gcc
修改CPP = gcc -E 为 CPP = arm-linux-gnueabihf-gcc -E

3.修改源码

① src/compat.h文件

  修改 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 (passwdbuf == NULL) {
        DIE(”getpwuid”);
        }
        if (initgroups(passwdbuf->pw_name, passwdbuf->pw_gid) == -1) {
        DIE(”initgroups”);
        }
*/

继续注释以下代码

/* if (setuid(0) != -1) {
            DIE("icky Linux kernel bug!");
  }*/

4.进入src目录编译

在./src目录下执行命令make,结果如下:

5.Boa服务器配置

①创建目录

在开发板根目录下创建/etc/boa文件夹

②将boa源码目录下的boa.conf拷贝到根文件系统/etc/boa目录下,将ubuntu下/etc/mime.types拷贝到开发板根文件系统的/etc下

#cp /etc/mime.types /source/rootfs/etc

cp boa.conf /home/zyc/linux/nfs/rootfs/rootfs/etc/boa
cp /etc/mime.types /home/zyc/linux/nfs/rootfs/rootfs/etc/boa

③修改配置文件boa.conf

vim /home/zyc/linux/nfs/rootfs/rootfs/etc/boa/boa.conf
vim  /source/rootfs/etc/boa/boa.conf
(1)Group的修改
修改 Group nogroup为 Group 0
(2)user的修改
修改 User nobody为 User 0
(3)ScriptAlias的修改
修改ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 为 ScriptAlias /cgi-bin/ /www/cgi-bin/
(4)DocumentRoot的修改
修改DocumentRoot /var/www 为DocumentRoot /www
(5)ServerName的设置
修改#ServerName www.your.org.here为 ServerName www.your.org.here
(6)AccessLo/g修改
修改AccessLog /var/log/boa/access_log为#AccessLog /var/log/boa/access_log

6.boa服务器测试

将整个boa-0.94.13拷贝至开发板根文件系统上,将主页index.html拷贝到/www目录下:然后在目录/boa-0.94.13/src/下启动.boa服务器运行,如下图所示:

移植结束

猜你喜欢

转载自blog.csdn.net/qq_42174306/article/details/128585366
今日推荐