boa Web服务器移植.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验指导书:boa Web服务器移植 实验目的与内容 在嵌入式设备的管理与交互中,基于Web方式的应用成为目前的主流,这种程序结构就是大家熟悉的B/S结构,即,在嵌入式设备上运行一个支持脚本或CGI功能的Web服务器,能够生成动态页面,在用户端只需要通过Web浏览器就可以对嵌入式设备进行管理和监控,非常方便实用。用户首先需要在嵌入式设备上成功移植支持脚本或CGI功能的Web服务器,然后才能进行应用程序的开发。本实验即完成了boa嵌入式WEB服务器的移植工作 BOA 服务器是一个小巧高效的web服务器,是一个运行于unix或linux下的,支持CGI的、适合于嵌入式系统的单任务的http服务器,源代码开放、性能高。Boa是一个非常小巧的单任务Web服务器,只能依次完成用户的请求,而不会fork出新的进程来处理并发连接请求,Boa的设计目标是速度和安全,在其站点公布的性能测试中,Boa的性能要好于Apache服务器。Boa支持CGI,能够为CGI程序fork出一个进程来执行老师提供: 名称 说明 cross-2.95.3.tar 交叉编译工具链 boa-0.94.13.tar.gz boa源码,下载地址为: FlashFXP 主机向目标机下载软件 一、准备工作 安装VMware Tools将老师提供的源码拷贝至共享目录下 创建工作目录,解压源码: mkdir /home/fengbcd /home/fengb tar –zxvf /mnt/hgfs/vmshare/boa-0.94.13.tar.gz (记得用命令补齐) cd /usr/local/arm tar –xvf /mnt/hgfs/vmshare/cross-2.95.3.tar (记得用命令补齐) 配置路径 vi /root/.bash_profile 在文件最后添加: export PATH=/usr/local/arm/2.95.3/bin:$PATH 保存退出后,执行命令: source /root/.bash_profile 二、进入编译目录, cd /home/fengb/boa-0.94.13/src ./configure //生成Makefile文件 修改Makeifle vi Makefile 在Makefile文件中找到CC=gcc,CPP=gcc –E,将其改为: CC=/usr/local/arm/2.95.3/bin/arm-linux-gcc CPP=/usr/local/arm/2.95.3/bin/arm-linux-gcc -E 保存退出。 修改boa.c vi boa.c 将下面两部分源码注释掉,分别在210、225行开始: /*if (passwdbuf == NULL) { DIE(getpwuid); }*/ /* if (setuid(0) != -1) { DIE(icky Linux kernel bug!); } */ 修改config.c vi config.c 找到 yyin = fopen(/etc/boa.conf, r);,将其改为: yyin = fopen(/var/boa.conf, r); 修改log.c vi log.c 将下面的源码注释掉,在72行开始: /* if (dup2(error_log, STDERR_FILENO) == -1) { DIE(unable to dup2 the error log); } */ 修改defines.h: vi defines.h 在第30行,将#define SERVER_ROOT “/etc/boa”,改为 #define SERVER_ROOT /var/boa” 修改boa.conf cd /home/fengb/boa-0.94.13 vi boa.conf 找到:#ServerName .here,将其修改为: ServerName .here 找到:User nobody,Group nogroup两行 改为: User 0 Group 0 找到:MimeTypes /etc/mime.types,改为: MimeTypes /var/mime.types 找到:ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 改为:ScriptAlias /cgi-bin/ /var/www/cgi-bin/ 三、boa: ELF 32-bit LSB executable, ARM, version 1 (ARM), for

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档