嵌入式web服务器BOA的移植及应用
嵌入式web服务器子系统
一.嵌入式web服务器的控制流程
如下图所示,嵌入式web服务器可实现通过网络远程控制嵌入式开发板,便捷实用。
控制流程:浏览器 --->>>嵌入式开发板
1)浏览器发送命令,开发板的web服务器接收请求,在开发板" #boa "运行web服务器后,其应用程序配置文件boa_conf内调用指定目录/cam/下的CGI程序 (arm-linux-gcc movctl.c -o movctl.cgi);
2)CGI程序调用开发板系统的其他程序,实现对开发板的控制;
浏览器 <<<---嵌入式开发板
1)开发板系统返回控制结果,经CGI程序生成HTMI文件->web服务器;
2)web服务器发送至网络中,浏览器根据开发板IP即可接收到控制的返回结果;
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
二.嵌入式web服务器->BOA的移植、cgi库移植 --->>>应用
BOA:下载BOA服务器并解压 -> 更改.configure文件中的交叉编译器arm-linux- -> make即生成boa应用程序、boa_conf配置文件;
cgi库:修改.configure的交叉编译器arm-linux-,make生成库文件libcgi.a移动至/rootfs/lib/下即可;
修改boa_conf配置文件中的配置项,如:指定网页界面设计文件/web/~.html、菜单跳转cgi程序源目录/web/cam/~.cgi。
开发板运行" #boa ",浏览器登录开发板ip-192.168.1.2,即可登录嵌入式web服务器的网页设计界面。而后启动移动物体监控主系统" motion -c motion_dist_conf ",即可登录服务器,界面获取监测到的移动图像及视频信息。
-----------------------------------------------------------------------------------------------------
其中,网页界面、获取监控图片和视频的cgi程序开发
网页界面:在原有的.html程序基础上进行修改,仅修改:" class = "menu" href="/cam/movie.cgi" ,即界面菜单文字---跳转后的网页/cgi运行程序;
cgi程序 :主函数cgiMain()下,
1)print_file(cgiOut,"../top.html"); //加头,将top.html内容打印到cgiOut
2)total = list_pic("/mnt/sd","jpg"); //将图片加入显示列表
3)if (cgiFormSubmitClicked("gopage") == cgiFormSuccess) { //处理用户的选择请求
4)show_pic(start,end,total); //显示图片
5)print_file(cgiOut,"../bottom.html"); //加尾,将bottom.html内容打印到cgiOut
arm-linux-gcc -L ./cgic205/ -lcgi movie.c -o movie.cgi
--------------------------------------------------------------------------------------------------------------------------------------------------------------
嵌入式web服务器程序设计---流程:
移植BOA服务器,移植CGI库 -> 设置网页界面程序 .html、cgi监控程序 -> 配置boa_conf配置文件,指定浏览服务器网页界面文件、及菜单跳转的cgi程序 -> 启动motion 、boa -> 浏览器登录web服务器的ip(开发板ip)即可。
嵌入式web服务器BOA的移植及应用的更多相关文章
- 嵌入式web服务器BOA+CGI+HTML+MySQL项目实战——Linux
准备环境操作系统: Ubuntu12.04 LTS环境搭建: 需要 BOA,Apache,CCGI,MySQL,GCC[Linux下嵌入式Web服务器BOA和CGI编程开发][数据库的相关知识——学习 ...
- [置顶] ARM-Linux下WEB服务器Boa的移植、配置和运行测试
Linux下使用的轻量级WEB服务器主要有:lighttpd.thttpd.shttpd和boa等等,而Boa是使用最为广泛的轻量级WEB服务器之一(当然,阿帕奇是世界使用排名第一的Web服务器软件) ...
- 嵌入式Web服务器boa在ARM平台的移植步骤
1.下载http://www.boa.org/ 2.解压tar xzf boa-0.94.13.tar.gz 3.编译cd boa-0.94.13/src./configure 生成了makefile ...
- Linux下嵌入式Web服务器BOA和CGI编程开发
**目录**一.环境搭建二.相关配置(部分)三.调试运行四.测试源码参考五.常见错误六.扩展(CCGI,SQLite) # 一.环境搭建操作系统:Ubuntu12.04 LTSboa下载地址(但是我找 ...
- web服务器boa的移植
1.下载官方网站 http://www.boa.org/ 我下载的是0.94.13版本 2.解压 tar -zxvf boa-0.94.13.tar.gz 3.进入src目录 ./configure ...
- 三种嵌入式web服务器(Boa / lighttpd / shttpd)的 linux移植笔记
一:移植Boa(web服务器)到嵌入式Linux系统 一.Boa程序的移植 1.下载Boa源码 下载地址: http://www.boa.org/ 目前最新发行版本: 0.94.13 ...
- 移动物体监控系统-sprint4嵌入式web服务器开发
一.BOA嵌入式服务器的移植 step1:下载BOA服务器并解压,进入boa下面的src目录,执行./configure生成必须的配置文件以及Makefile step2:修改Makefile文件 c ...
- 嵌入式web服务器-thttpd
交叉编译thttpd http://lakie.blog.163.com/blog/static/45185220201162910432330/ thttpd安装与调试 http://blog.cs ...
- 学号20145332 《信息安全系统设计基础》实验五 简单嵌入式WEB服务器实验
实验目的 掌握在 ARM 开发板实现一个简单 WEB 服务器的过程. 学习在 ARM 开发板上的 SOCKET 网络编程. 学习 Linux 下的 signal()函数的使用. 实验内容 学习使用 s ...
随机推荐
- Qt-vs-addin失效的问题
Qt-vs-addin的小问题 使用Visual Studio进行Qt开发的时候,需要安装一个插件.然而有时候这个插件的一些工具却莫名其妙的失效: 其中qt5appwrapper.exe用于编辑Qt工 ...
- 分享基于.NET动态编译&Newtonsoft.Json封装实现JSON转换器(JsonConverter)原理及JSON操作技巧
看文章标题就知道,本文的主题就是关于JSON,JSON转换器(JsonConverter)具有将C#定义的类源代码直接转换成对应的JSON字符串,以及将JSON字符串转换成对应的C#定义的类源代码,而 ...
- Qt4.7.4下单独编译QtWebkit
最近编译出了Qt4.7.4的嵌入式版本,但没有编译QtWebkit库.在编译一个使用Webkit的工程时出错,而根据工程的需要,要单独编译QtWebkit库. 由于不想再次编译整个的Qt库,于是 ...
- Qt 5.8 for Device Creation(好多内容,包括虚拟机安装,静态编译)
http://doc.qt.io/QtEnterpriseEmbedded/qt-configuration-tool.html http://doc.qt.io/QtEnterpriseEmbedd ...
- 预处理器#include 指令
预处理器发现 #include 指令后,就会寻找后跟的文件名并把这个文件的内容包含到当前文件中.被包含文件中的文本将替换源代码文件中的#include指令,就像你把被包含文件中的全部内容键入到源文件中 ...
- Qt+QZXing编写识别二维码的程序
本人最近在用Qt编写程序,需要用编写二维码识别功能.在网上搜寻一番,找到了QZXing.配置过程中确实出了一大把汗,这里我写这篇文章记录配置方法,替后人省一把汗吧!我的开发环境:MSVC2010 + ...
- c# 将字符串转换为指定类型的值
private object GetValueByProperty(string key, string value, ref Type typeValue) { Type t = typeof(T) ...
- 【DRP】-Dao层常用功能代码:增删改查
本系列博客内容为:做DRP系统中Dao层常用功能. 该项目采用MVC架构 C(Controller)控制器,主要职责;1.取得表单参数:2.调用业务逻辑:3.转向页面 M(Model)模型,主要职责: ...
- 学习Java,值得你留意的问题(1)更名为《学习Java,容易被你忽略的小细节(1)》
记得大二快要结束的时候,有个女孩子突然问我“你会Java吗,帮我做大作业好吗?” 实话说,那个女孩真的很漂亮,我当时也非常想帮她.但是我从来没有接触过Java,让我在短短的几天内完成Java程序设计课 ...
- 前端 JS 修炼(第一天)包装对象、作用域、创建对象
1.js基本概念以及注意 直接量 :程序中直接使用的数据值.下面列出的都是直接量: 1 12 //数字 2 1.2 //小数 3 "hello world" //字符串文本 4 t ...