T31开发笔记: Web服务器

若该文为原创文章,转载请注明原文出处

一、硬件和开发环境
1、硬件:T31X+SC5235 

2、开发环境: ubuntu16.04-64bit

3、编译器:mips-gcc540-glibc222-32bit-r3.3.0.tar.gz

注:板子和和WIFI模块是某淘上淘的,使用的是RTL8188,使用的是USB接口,uboot和内核是自己裁剪移植的,内核默认自带WIFI驱动,所以不用移植可以直接使用。

二、Wifi 启动操作流程

  1、加载 KO , 成功会生成 wlan0 节点,通过 ifconfig -a 可以看到。
  2: $ ifconfig wlan0 up 启动 WIFI(可选操作)
  3: $ wpa_supplicant -D wext -i wlan0 -c wpa_supplicant.conf –B
4:连接 WIFI:自动配置 IP; $ udhcpc -i wlan0 获取 IP 地址,网关等信息
   (注意 udhcpc.script 的路径匹配)。
     或者手动配置 IP;
     $ ifconfig wlan0 193.169.4.75
     $ route add default gw 193.169.4.1
     $ echo "nameserver 193.169.1.57" > /etc/resolv.conf      
三、wpa_supplicant移植
   
    使用的SDK里rootfs已移植了wpa_supplicant, 此过程作者未实际操作过,如有需要,请联系或参考网上教程进行移植。
四、移植Boa
作者使用的版本是:boa-0.94.13, 请自行网上下载
1、编译boa
1、解压
   tar -zxvf boa-0.94.13.tar.gz
2、进入src目录
   cd boa-0.94.13/src
3、配置
   ./configure
4、修改Makefile, 主要修改CC和CPP
   CC = mips-linux-gnu-gcc
   CPP = mips-linux-gnu-gcc -E 
5、make

在make过程中报错了,

处理方法是:
  1、少装了bison和flex
     sudo apt-get install bison flex
  2、util.c:100:1: error: pasting "t" and "->" does not give a valid preprocessing token
     vim compat.h
     找到
       #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
     修改成
       #define TIMEZONE_OFFSET(foo) (foo)->tm_gmtoffv
  重新make, 编译成功

2、拷贝boa可执行文件到开发板的bin目录下,自行拷贝,作者使用的是ftp方式拷贝。

3、修改配置文件,文件在boa-0.94.13目录下

#vim boa.conf

  (1)Group的修改

  修改 Group nogroup

  为 Group 0

  (2)user的修改

  修改 User nobody

  为 User 0

    或者统一设置为

        User root

        Group root

  (3)ScriptAlias的修改

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

  为 ScriptAlias/cgi-bin/ /www/cgi-bin/

  (6)ServerName的设置

  修改#ServerName www.your.org.here

  为 ServerName www.your.org.here

  否则会出现错误“gethostbyname::No such file or directory”

  (7)AccessLog修改

  修改AccessLog /var/log/boa/access_log

  为#AccessLog /var/log/boa/access_log

否则会出现错误提示:“unable to dup2 the error log: Bad file deor”

4、在开发板创建boa相关文件夹及文件

mkdir -p /etc/boa
mkdir -p /var/log/boa         这里存放boa服务器运行的相关信息,在运行时会产生access_log 和error_log两个文件,errr_log会打印出boa运行时所产生的错误信息。
mkdir -p /var/www             这里存放相应的页面即html文件
mkdir -p /var/www/cgi-bin     这里存放cgi程序

5、把编辑好的boa.conf配置文件拷贝到开发板的/etc/boa目录下。

五、测试

1、终端下运行boa, 出错:
错误:Could not open mime.types file, "/etc/mime.types", for reading
修复:复制ubuntu /etc/mime.type文件到目标板/etc/boa下

错误: "unable to dup2 the error log: Bad file descriptor"
修复:在boa源码里,即src文件夹下把log.c中的第73行的if语句注释掉

错误参考:https://www.shangmayuan.com/a/ac8e0759629844a7b09f6b87.html

2、动态测试:

        将boa-0.94.13文件夹下examples下的cgi-test.cgi拷贝到开发板/var/www/cgi-bin/文件夹下
然后再地址栏输入http://192.168.1.230:8088/cgi-bin/hellocgi 回车,网页将显示内容,至此boa移植结束。

六、结束:
       移植过程还算顺利,主要是以前有移植过,基本没有难点,测试也可以,移植boa主要是想做web的视频监控,为项目作准备。

如有侵权,请及时联系博主删除,VX:18750903063
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

殷忆枫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值