goahead开发入门上篇.doc_第1页
goahead开发入门上篇.doc_第2页
goahead开发入门上篇.doc_第3页
goahead开发入门上篇.doc_第4页
goahead开发入门上篇.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Goahead webserverGoAhead WebServer,它是一个源码免费、功能强大、可以运行在多个平台的嵌入式 WebServer。 GoAhead WebServer的主要特性有: 1. 支持ASP 2. 嵌入式的javascript 3. 标准的CGI执行 4. 内存中的CGI处理GoFroms 5. 扩展的API 6. 快速响应,每秒可处理超过50个请求 7. 完全和标准兼容 8. 如果不包含SSI,仅要求60K的内存;包含SSI,要求500K内存 9. web页面可以存在ROM或文件系统中 10. 支持多种操作系统,包括eCos 、LINUX 、LynxOS 、QNX 、VxWorks 、WinCE、 pSOS等 Goahead 1. 介绍 GoAhead Webserver是为嵌入式实时操作系统(RTOS)量身定制的Web服务器。它的目标也许不在于目前的WEB服务器市场,而是面向当嵌入式系统深入我们的工作与生活的明天,那时,它也许会成为使用最广泛的WEB服务器。GoAhead Webserver构建在设备管理框架(Device Management Framework)之上,用户可以像标准的Web Services一样来部署自己的应用,不需要额外的编程。GoAhead Webserver支持SOAP客户端(Simple Object Access Protocol,简单对象访问协议),XML-RPC客户端,各种Web浏览器和单独的Flash客户端。GoAhead Webserver支持一种类ASP的服务器端脚本语言,其语法形式和微软的ASP语法基本相同(Active Server Page)。GoAhead Webserver是跨平台的服务器软件,可以稳定地运行在Windows,Linux和Mac OS X操作系统之上。GoAhead Webserver是开放源代码的,这意味着你可以随意修改Web服务器的功能。这款WEB服务器非常小巧,它的WIN CE版本编译后的大小还不到60k,它的输出通常也是面向一些小屏幕设备。在性能方面,使用一颗24MH z的68040处理器,它的响应速度为20次/秒,使用266MHz的Pentium处理器可以达到50次/秒的响应速度。 2. 操作系统Windows CE, Wind River VxWorks, Linux, Lynx, QNX,与Windows 95/98/NT 3. 版本 Goahead从2003年开始发布,最新的版本:webs218.tar ,827kB,解压后为2.28MB 4. 功能、特点 很小的内存消耗 支持认证功能Digest Access Authentication (DAA) 支持安全的通信,例如SSL(安全的套接字层) 支持动态Web页面,如ASP页面 可以使用传统的C语言编程定制Web页面里的HTML标签 支持CGI(公共网关编程接口) 嵌入式的JavaScript脚本翻译器 独特的URL分析器 它基本上属于一个HTTP1.0标准的WEB服务器,对一些HTTP1.1的特性如(持久连接)也提供了支持。每秒65次connections 5. 可执行文件大小、内存使用情况 内存需求60K,它的WIN CE版本编译后的大小还不到60k。本文主要就介绍linux下 基于goahead-2-1.8 的开发Goahead webserver环境是怎么搭建的?1. 下载Goahead-2-1.8 或者其他版本2. 进入GoAhead-2.1.8/LINUX下面 然后make 这时会生成一个webs的可执行文件3. 后台启动程序 (./webs &)这时环境搭建好了,我们可以试着访问站点的下面的网页 1、 打开浏览输入 http:/localhost/index.aspLocalhost可以换成 你的ip地址如 /index.asp为什么我们可以这样访问index.asp?index.asp是放在哪个地方的? 带着这些疑问我们继续忘下解释:其实在http:/localhost/index.asp这个地址里面有个隐含的信息,那就是端口,我这里用的是80默认端口,完整的路径应该是http:/localhost:80/index.asp端口可以在main.c里面去修改 打开main.c大约在59行的样子你可以找到以下这些语句/* Locals */* *Change configuration here */static char_t*rootWeb = T(www);/* Root web directory */static char_t*password = T();/* Security password */static intport = 80;/* Server port */static intretries = 5;/* Server port retries */static intfinished;/* Finished flag */* Forward Declarations */Static int port = 80;这是我定义的80端口,当然很多人也用8080 ,你要是喜欢你可以根据自己的实际情况修改,如1314 http:/localhost:1314/index.aspstatic char_t*rootWeb = T(www);www是什么?这个就回答了之前的问题,这是我们服务器的监听目录,这可以在Goahea-2-1.8/下面找到(如果没有可以手动建立),我们访问的页面index.asp正是放到这个目录下的 (Goahea-2-1.8/www)学习webserver开发很重要的一个环节就是开发动态网页1、 表单的提交 : 借用他里面本来的一个例子还说明目录web下有一个叫forms.asp的文件 把这个文件拷贝到监听目录下(我的是“www”)打开浏览器,用http:/localhost:80/forms.asp访问 如下图 如果没有找到这个forms.asp的文件可以自己建一个代码如下:GoForm TestGoForm TestName:Address: 输入你的名字和地址 点确定看看 如:表单处理完之后输出如下结果:这样看起来很简单的功能是怎么实现的呢:把main.c打开,找到下面这个函数这个就是用来处理我们输入结果的函数也许大家还不知道为什么直接就是这个函数来处理,是在哪里指定的。那我们就回到forms.asp的代码里面有这样一句 :它的意思就是如果这个表单提交了,那么后台就用formTest来处理还有一个疑问就是:参数是怎么传递的还是回到forms.asp的代码里面里面有个name = name 和 name = address 这个name 和 address在代码里面和相对应。static void formTest(webs_t wp, char_t *path, char_t *query);/这是声明关于函数formTest()还有几点要说的 如果要使他有用我们还必须在main.c进行注册下面239行就是用websFormDefine() 对 formTest进行注册关于for

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论