嵌入式开发板boa服务器搭建(解决502错误)

公司使用的是飞凌imx6开发板,现在需要用其搭建web server服务器,在飞凌为开发板烧录的文件系统中已经搭建了boa服务器:boa可执行文件放在/sbin下,/etc/rc.d/init.d下boa文件指定开机运行boa服务器,配置文件boa.conf在/etc/boa/和/usr/local/boa/下都有一份,配置文件中指定:boa服务器根目录是/usr/local/boa/;首页是该文件夹下的一个index.html文件,CGI程序则放入/usr/lib/cgi-bin/文件夹下。但经过大量测试和网上求证发现,飞凌自带的boa服务器虽然支持静态网页,但无法运行CGI程序,不管是自己编写的cgi程序还是CGI官方的测试程序,不管是用哪种编译器,把生成的CGI程序放入指定文件夹下,使用以太网连接开发板和PC,用浏览器打开开发板中的CGI文件,提示502错误,网上所查到的包括更改CGI文件权限在内的所有方法都无法解决。如果你也面临同样的问题,不妨按照以下步骤重装一下boa服务器:
官网下载压缩包(http://www.boa.org/ ),在ubuntu上解压,按照这位大佬的教程(https://blog.csdn.net/sishuirensheng66/article/details/37764621 )做相应改动,需要注意一下几点:
教程中boa版本为0.94.13,在官网中下载的该版本解压时会失败(可能是我个人的问题),所以我这里下载了0.94.14版本,在0.94.14中,compat.h文件不需要修改,boa.c文件做如下修改:boa.c修改
配置文件修改:在搭建boa时配置文件的修改可以说是最关键的一步,其中重点要更改的几项:
1、去掉#ServerName www.your.org.here这一句前面的#;
2、 DocumentRoot /usr/local/boa(这里放置要显示的页面index.html,这个文件夹也将是服务器根目录);
3、 去掉#AddType application/x-httpd-cgi cgi 这一句前面的#,这影响到服务器能否调用CGI程序
4、 ScriptAlias /cgi-bin/ /usr/local/boa/cgi-bin/(这里设置CGI程序虚拟地址的绝对路径,用来存放.cgi文件)
5、 User root (对于CGI程序的权限,比如调用system()函数 尤为重要,不改则没有权限使用system()这种直接操作系统函数)
Group 0
移植:
1、 将配置文件boa.conf 移动到/etc/boa/ 目录下。
2、 创建/var/log/boa/ 目录,这样Boa服务器启动时会在该目录下创建日志文件。
3、 将交叉编译生成的boa可执行文件放到/sbin/目录下
教程中的下面两步 imx6中已有相关文件,不需要进行,如果你的板子上没有相关文件需要按步骤做完。
4、5步
到这里boa服务器就搭建完成了,编写一个c文件在ubuntu上使用arm-linux-gcc编译,如果ubuntu上安装了arm-linux-gcc但是却提示no found,需要在/etc/profile文件中添加路径,打开该文件,在最后一行加上export PATH=$PATH:+你的arm-linux-gcc路径,如export PATH=$PATH:/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin,保存文件,使用source /etc/profile指令使其生效,就可以使用arm-linux-gcc了,本次生效至命令行被关闭,重新打开命令行后又无法使用arm-linux-gcc了,重启一下就好了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值