嵌入式Web项目(一)——Web服务器的引入


网络模型

在实际开发中,往往是基于TCP/IP四层模型进行项目的开发。

TCP/IP四层模型对应Wed项目的映射关系
应用层嵌入式Wed控制器
传输层TCP UDP
网络层IP
网络接口层网卡

Web服务指的就是:使用TCP协议进行传输的网页服务

TCP服务器的概念

TCP服务器:是一个应用服务器,只要他的底层(传输层)的协议,如果使用了TCP,那么这样的应用程序称之为TCP服务器

Wed服务器的概念

Web服务器本身就是一个TCP服务器,由于应用层在数据格处理上,采用了HTTP的协议标准,这样的TCP服务器,称之为Web服务器。这个服务器可以为用户浏览器提供合法的数据

netstate 工具

从操作系统角度来分析,TCP/IP四层模型中,应用层处于在用户态,传输层以下就处于内核态了。因此用户往往是不能够直接访问内核空间的,但是我们又有查看当前网络信息的需求,因此Linux内核就提供一个这样的工具netstat
参数
| 选项| 含义 |

-t表示TCP相关
-u表示UDP相关
-a表示所有的信息
-n表示将端口以数字的方式显示

嵌入式系统,常用开源Web服务器

服务器性能
BOA功能交单,代码量少,适合学习
appweb功能强大、代码量大、工程使用

移植BOA到Ubuntu

下载BOA源码

进入官网
官网
在这里插入图片描述下载
在这里插入图片描述

传输到虚拟机进行解压

创建目录用于存放boa
在这里插入图片描述
解压
在这里插入图片描述

编译BOA

使用配置脚本获取与体系结构相关的Makefile
在这里插入图片描述
在这里插入图片描述
修改Makefile,去掉调试选项
在这里插入图片描述
执行Makefile
在这里插入图片描述
出现错误,该错误出现在compat.文件,120行。我们去进行修改

在这里插入图片描述修改为
在这里插入图片描述先make clean一下,把之前生成的目标文件删了

make
在这里插入图片描述
strip剔除符号表
因为我们要移植到嵌入式系统中,希望尽可能地减少占用存储空间
在这里插入图片描述

修改BOA配置文件

配置文件的目的就是告诉BOA如何去工作

备份一份配置文件,防止修改错误无法还原
在这里插入图片描述
将配置文件传到/etc目录下
在这里插入图片描述修改配置文件
在这里插入图片描述注意区分 8080端口号,8080是网页浏览的端口号,80是HTTP协议默认的端口号。

在这里插入图片描述在这里插入图片描述修改日志
在这里插入图片描述
在这里插入图片描述修改网页访问路径
在这里插入图片描述在这里插入图片描述
cgic 动态网页的路径修改留在后面更新

测试BOA

启动boa

创建访问目录和日志目录
在这里插入图片描述

启动boa服务器程序
在这里插入图片描述

创建一个HTML文件并放入到www目录下

测试代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>第一次测试</title>
</head>
<body>
    <div class="jumbotron">
        <div class="container">
            <h1>Hello, world!</h1>
            <p>不是你觉到,悟到并做到的都不是你的</p>
            <p><a class="btn btn-primary btn-lg" href="#" role="button">别点我</a></p>
        </div>
      </div>
</body>
</html>

放入www目录下
在这里插入图片描述

浏览器访问

在这里插入图片描述

  • 8
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
嵌入式AppWeb是一种嵌入式Web服务器,它被设计成可以在嵌入式系统中提供基于Web的用户界面和应用程序功能。嵌入式系统通常是指嵌入在各种设备中的小型、低功耗、资源受限的计算机系统,如智能手机、家电、电动工具等。 嵌入式AppWeb提供了一种轻量级的Web服务器解决方案,可以在资源受限的嵌入式系统中运行,具有小型、高效和可靠的特点。它支持基本的HTTP协议、动态网页生成、静态文件服务、安全认证等功能,可以方便地为嵌入式设备提供远程管理和监控功能。 利用嵌入式AppWeb开发人员可以在嵌入式系统中实现类似于传统Web服务器的功能,同时避免了资源占用和性能损耗方面的问题。嵌入式AppWeb可以通过提供C语言API、JavaScript API等方式,为开发人员提供开发应用程序和用户界面的接口,使得开发人员能够方便地在嵌入式设备上开发和部署Web应用程序。 嵌入式AppWeb在很多嵌入式系统应用中具有广泛的应用价值。例如,在智能家居系统中,可以利用嵌入式AppWeb实现设备的远程控制和维护;在工业自动化中,可以利用嵌入式AppWeb实现设备的监控和管理;在物联网应用中,可以利用嵌入式AppWeb实现设备之间的数据交互和远程控制等。 总之,嵌入式AppWeb是一种为嵌入式系统提供Web功能的解决方案,它可以在资源有限的嵌入式设备中运行,并提供基于Web的用户界面和应用程序功能,为嵌入式系统应用开发提供了便利和灵活性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Jacky~~

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

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

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

打赏作者

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

抵扣说明:

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

余额充值