- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux下的CicWeb标准库开发指导
Linux下的Cgic-Web标准库开发指导
分类关键字:CGI程序摘要:
版本 日期 责任人 描述 测试报告 V1.0 200创建
功能简介
应用的项目 JS200串口服务器 JS200-FE7R2R4-DC-HL FP-32-001-038 1.0 电信级串口服务器
详细内容
关键字:cgic,标准库,web服务器,boa,CGI程序嵌入式Web服务器由于嵌入式设备资源一般都比较有限,并且也不需要能同时处理很多用户的请求,因此不会使用Linux下最常用的如Apache 等服务器,而需要使用一些专门为嵌入式设备设计的Web服务器,这些Web服务器在存贮空间和运行时所占有的内存空间上都会非常适合于嵌入式应用场合。典型的嵌入式Web服务器有Boa ()和thttpd (/software/thttpd/)等,它们和Apache等高性能的Web服务器主要的区别在于它们一般是 单进程服务器,只有在完成一个用户请求后才能响应另一个用户的请求,而无法并发响应,但这在嵌入式设备的应用场合里已经足够了。Boa:(当前最新开发版本是0.94.14rc21版)是一个非常小巧的Web服务器,可执行代码只有约60KB。它是一个单任务Web服务器,只能依次完成用户的请求,而不会fork出新的进程来处理 并发连接请求。但Boa支持CGI,能够为CGI程序fork出一个进程来执行。Boa的设计目标是速度和安全,在其站点公布的性能测试中,Boa的性能 要好于Apache服务器。CGIC:CGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。在物理上,CGI是一段程序,它运行在Server上,提供同客户端 Html页面的接口。CGIC是一个支持CGI开发的开放源码的标准C库,可以免费使用,只需要在开发的站点和程序文档中有个公开声明即可,表明程序使用了CGIC库,用户也可以购买商业授权而无需公开声明。
总之,CGIC(当前最新版本是2.05版)是一个功能比较强大的支持CGI开发的标准C库,并支持Linux, Unix 和Windows等多操作系统。
1.2开发基本原理
基本原理如下图所示:
原理说明:
客户端向web服务器发送请求
Web服务器接受请求,并将客服端发送过来的数据进行解析后送入标准输入流中供cgic取用
用户程序通发送过来的请求,处理完毕后将处理的结果通过cgic接口写入到标准输出流中供过cgic接口获得相关信息后分析请求的类型并进入相关的处理函数处理从客服端web服务器下发。此时用户程序终止。
Web服务器从标准输出流中取回处理结果
Web服务器将取回的处理结果下发给客户端响应请求。
第2部分 开发步骤
应用web标准库的开发流程框图如下:
2.1web服务器(boa)
2.1.1web服务器(boa)移植
下载 Boa 源码
下载地址:
最新的开发版本: 0.94.14rc21
通过上面的网站下载 boa-0.94.14rc21.tar.gz压缩包后,参照下面的操作步骤实现对boa的编译。注意:从 boa 上下载的是 boa-0.94.14rc21.tar.tar,
…
#解压压缩包boa-0.94.14rc21.tar.gz
tar -xzf boa -0.94.14rc21.tar.gz
#生成Makefile文件,进入boa-0.94.14rc21目录直接运行该下的configure文件
cd boa-0.94.14rc21.tar.gz/
#通过压缩包中的configure文件生成make文件
CC= arm-linux-gcc ./ configure –host=arm9+linux
#其中arm-linux-gcc代表交叉编译时所使用的编译命令, arm9+linux表示目标机的信息.如果在编译过程过还要加入更多的信息,运行./ configure –h命令查看帮助。
#运行Makefile文件,生成目标程序直接运行如下命令进行编译
make
…
#编译完成后会在src目录下生成名为boa的可执行文件,将该文件通过ftp方式拷贝到目标机器中修改其权限即可运行
2.1.2Boa服务器配置
Boa服务器的配置文件是附件中的boa.conf文件,这个文件是公司arm9+linux下boa的配置文件。用户可以在此文件的基础上根据其需要进行更改。
Boa具体配置说明如下:
Group的修改
修改 Group nogroup
为 Group 0
由于在/etc/group文件中没有nogroup组,所以设成0。另外在/etc/p
您可能关注的文档
- Java EE企业级项目开发JavaEE单元5 任务3文档检索设计.ppt
- Java EE企业级项目开发JavaEE单元7 任务 任务实施.ppt
- Java EE企业级项目开发JavaEE单元6 任务3 务实施.ppt
- Java EE企业级项目开发JavaEE单元6 务2 任务实施.ppt
- Java EE企业级项目开发JavaEE单元6 务1 签到签退设计.ppt
- Java EE企业级项目开发JavaEE单元7 任3 任务实施.ppt
- Java EE企业级项目开发JavaE单元5 任务2 任务实施.ppt
- Java EE企业级项目开发JavaEE单元8 务3 会议查询设计.ppt
- Java EE企业级项目开发JavaE单元6 模块概述.ppt
- Java EE企业级项目开发JavaEE单元9 任务 系统测试与性能测试.ppt
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
文档评论(0)