欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > PPT文档下载
    分享到微信 分享到微博 分享到QQ空间

    第9章 嵌入式Web环境的设置.ppt

    • 资源ID:576038       资源大小:411.50KB        全文页数:38页
    • 资源格式: PPT        下载积分:10金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第9章 嵌入式Web环境的设置.ppt

    第9章 嵌入式Web环境的设置本章重点 通用网关接口(CGI)技术的工作原理 thttpd服务器。Boa服务器。本章内容 9.1 Linux环境下Web 服务器 9.2 Linux环境下基于thttpd动态服务器的实现过程 9.3 Linux环境下基于Boa的动态服务器实现 9.4 用DMF实现搭建动态Web 服务器9.1 Linux环境下Web 服务器 嵌入式系统已经大量应用于各种场合,网络技术的发展使嵌入式系统的网络功能日益完善。在测控领域里,常常需要远程查询被测控对象的实时状态,或进行某种控制操作,采用服务器浏览器进行工作的嵌入式系统,可以仅通过浏览器就完成所有的测控任务而不依赖于其他客户端程序,具有简单网络服务器功能的嵌入式系统可以方便地提供这种功能。9.1 Linux环境下Web 服务器将嵌入式系统接入网络,一般是为了提供一种系统与外界交互的途径,由于网络的可扩展性,嵌入式系统一旦连接到网络中,其所能提供的信息和获得的信息都将成倍增加。为了更方便地通过网络向外提供信息,必须为系统构建Web服务器。Linux环境下的嵌入式主流Web服务器,包括Apache、httpd、thttpd 和Boa等几种。httpd是最简单的一种Web 服务器,它的功能最弱,不支持认证,不支持CGI。如果Web 服务器仅需提供一些静态页面,例如简单的在线帮助、系统介绍等,完全可以用静态服务器httpd来实现。thttpd和Boa都支持认证、CGI等,功能都比较全。若需提高系统的安全性,或需要与用户进行交互,例如数据查询、实时状态查询等,则必须使用动态Web技术,可以选择这两种服务器之一来实现。其中Boa开放源代码、性能高,运行所需空间仅为140KB左右,对CGI的支持效果最佳。因此,在很多情况下选择Boa作为ARM-Linux系统的Web服务器。9.1 Linux环境下Web 服务器 9.1.1 CGI通用网关接口技术CGI(Common Gate Interface)通用网关接口,是一个连接外部应用程序到服务器的标准。一个简单的静态HTML文档是没有交互后台程序,而CGI程序则可以实时执行并输出动态信息。CGI是实现Web页面技术的关键所在,其定义是Web服务器与外部应用程序之间通信的标准接口。与专用编程接口相比具有以下优点:独立于服务器体系结构和编程语言。编程者可以自由选择适合于特定编程任务的语言。提供完整的进程隔离机制。CGI程序独立于Web服务器,运行在自己的进程地址空间,只与服务器交换接口信息,从而保证了服务器免受出错CGI进程的影响和用户的有意试探,提高了安全性和稳定性。9.1 Linux环境下Web 服务器CGI主要功能是在Web环境下,将WWW与Web数据库集成在一起,顺利地实现了动态Web页面查询。从用户端浏览器传递一些指令或参数给Web服务器,CGI 脚本通过标准输入STDIN获得输入信息,最后使用STDOUT输出HTML形式的结果文件,经Web服务器送回浏览器显示给用户。由于用户能传递不同的参数给CGI 脚本,所以CGI技术使得浏览器和服务器之间具有很强交互性。9.1 Linux环境下Web 服务器 9.1.2 eb动态服务的流程目前实现动态Web页面有多种技术可供选择,CGI、ASP、PHP等技术在高端平台上都能很好地实现用户所需的功能。但在嵌入式Linux环境下实现动态网页,目前只能采用CGI。使用CGI需要一个输入界面,一般就是一个包含了表单的页面FORM。FORM在CGI中是最常被使用的输入界面,它由一组标签所组成,目前的标准中,FORM的标签可分为三大类:INPUT、SELECT以及TEXTAREA。在设置了一系列有关的标签后,每个FORM通常需要一个SUBMIT按钮用来发送表单内容。当用户在客户端按下FORM上的SUBMIT按钮,浏览器(Browser)将客户端输入的参数传回服务器,服务器启动指定的程序并将封装的参数传入,后台程序依照传入的参数完成指定的工作。如果此时有需要传回结果的话,则程序会把结果传回给服务器并发送到浏览器。9.2 基于thttpd动态服务器的实现过程.下载服务器软件下载地址:http:/ home#tar zxvf thttpd-2.25b.tar.gzrootlocalhost home#cd thttpd-2.25brootlocalhost thttpd-2.25b#./configurerootlocalhost thttpd-2.25b#vim Makefile修改内容:(1)主要把”CC=gcc”修改为”CC=arm-linux-gcc”在此交叉编译器的版本为2.95.3。9.2 基于thttpd动态服务器的实现过程(2)把”LDFLAGS=”设置为”LDFLAGS=-static”,表示指定静态链接二进制文件,假如你的开发板上的文件系统是jffs2文件系统,那建议此项不要设置了。因为,设置了此项后,编译出来的可执行文件比较大。当把可执行文件从宿主机拷贝到开发板时,可能会提示”cp:Write Error:No space left on device”。因为采用的是jffs2文件系统,是日志文件系统,拷贝文件不能超过文件系统的容量,使用df-h可以查看容量的大小。rootlocalhost thttpd-2.25b#makerootlocalhost thttpd-2.25b#du thttpd104thttpd 9.2 基于thttpd动态服务器的实现过程.修改配置文件权限rootlocalhost thttpd-2.25b#chmod+777 contrib/redhat-rpm/thttpd.conf.设置配置文件thttpd.conf参数rootlocalhost thttpd-2.25b#vim contrib/redhat-rpm/thttpd.conf内容如下:dir=/etc/thttpd/html#指明webserver存放网页的根目录路径chrootuser=root#default=nobody#以root身份运行thttpdlogfile=/etc/thttpd/log/thttpd.log#日志文件路径pidfile=/etc/thttpd/run/thttpd.pid#pid文件路径9.2 基于thttpd动态服务器的实现过程.在开发板端启动eb服务在开发板上操作如下:#mount 192.168.2.181:/home/mnt#cd/mnt/thttpd-2.25b/mnt/thttpd-2.25b#cp thttpd/bin/mnt/thttpd-2.25b#cp contrib/redhat-rpm/thttpd.conf/etc/mnt/thttpd-2.25b#mkdir-p/etc/thttpd/html/mnt/thttpd-2.25b#mkdir/etc/thttpd/log/mnt/thttpd-2.25b#mkdir/etc/thttpd/run/mnt/thttpd-2.25b#cp./index_1.html/etc/thttpd/html/mnt/thttpd-2.25b#cp./index_2.html/etc/thttpd/html/mnt/thttpd-2.25b#thttpd-C/etc/thttpd.conf此时,服务已经启动,可以在其他PC机上,打开浏览器,并输入http:/192.168.2.120,会弹出如下图所示:9.2 基于thttpd动态服务器的实现过程在上图中,点击index_1.html和index_2.html分别显示如下:9.2 基于thttpd动态服务器的实现过程假如要支持CGI,那么thttp.conf的配置文件修改如下:dir=/etc/thttpd/html#指明webserver存放网页的根目录路径#chroot#屏蔽chroot是为了运行动态编译的CGIuser=root#default=nobody#以root身份运行thttpdlogfile=/etc/thttpd/log/thttpd.log#日志文件路径pidfile=/etc/thttpd/run/thttpd.pid#pid文件路径cgipat=/cgi-bin/*声明CGI程序的目录,是以dir为根目录的路径9.3 Linux环境下基于Boa的动态服务器实现 9.3.1 安装与配置boa用Boa来实现动态Web 服务器的方法较为复杂,主要通过boa.conf和mime.types进行,具体过程如下:.下载服务器软件下载地址:http:/www.boa.org/boa-0.94.13.tar.gz.安装Boa(1)#tar xvzf boa-0.94.13.tar.gz(2)#cd boa-0.94.13/src(3)#./configure9.3 Linux环境下基于Boa的动态服务器实现.生成Makefile文件(1)#vim Makefile修改Makefile文件,找到CC=gcc,将其改成CC=arm-linux-gcc(注:此为交叉编译器2.95.3),再找到CPP=gcc-E,将其改成CPP=arm-linux-gcc-E,并保存退出。(2)#make编译生成可执行文件.此时的boa大小为240K左右(3)#arm-linux-strip boa去除调试信息,减小体积,此时的boa大小为60K左右.修改配置文件boa.confrootlocalhost boa-0.94.13#vim boa.conf配置内容如下:(1)#监听的端口号,缺省都是80,一般无需修改Port 809.3 Linux环境下基于Boa的动态服务器实现(2)#bind调用的IP地址,一般注释掉,表明绑定到INADDR_ANY,通配于服务器的所有IP地址(3)#Listen 192.68.0.5(4)#作为哪个用户运行,即他拥有该用户的权限,一般都是nobody,需要/etc/passwd中有nobody用户User nobody(5)#作为哪个用户组运行,即他拥有该用户组的权限,一般都是nogroup,需要在/etc/group文件中有nogroup组Group nogroup(6)#当服务器发生问题时发送报警的email地址,目前未用,注释掉#ServerAdmin rootlocalhost9.3 Linux环境下基于Boa的动态服务器实现(7)#错误日志文件。如果没有以/开始,则表示从服务器的根路径开始。如果不必错误日志,则用#/dev/null。在下面设置时,注意一定要建立/var/log/boa目录ErrorLog/var/log/boa/error_log#访问日志文件。如果没有以/开始,则表示从服务器的根路径开始。如果不必错误日志,则用#/dev/null或直接注释掉。在下面设置时,注意一定要建立/var/log/boa目录#AccessLog/var/log/boa/access_log(8)#是否使用本地时间。如果没有注释掉,则使用本地时间。注释掉则使用UTC时间#UseLocaltime(9)#是否记录CGI运行信息,如果没有注释掉,则记录,注释掉则不记录#VerboseCGILogs9.3 Linux环境下基于Boa的动态服务器实现(10)#服务器名字ServerName (11)#是否启动虚拟主机功能,即设备能有多个网络接口,每个接口都能拥有一个虚拟的Web服务器。一般注释掉,即不必启动。#VirtualHost(12)#非常重要,HTML文件的主目录。如果没有以/开始,则表示从服务器的根路径始。DocumentRoot/var/www(13)#如果收到一个用户请求的话,在用户主目录后再增加的目录名UserDir public_html9.3 Linux环境下基于Boa的动态服务器实现(14)#HTML目录索引的文件名,也是没有用户只指明访问目录时返回的文件名DirectoryIndex

    注意事项

    本文(第9章 嵌入式Web环境的设置.ppt)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!

    收起
    展开