3.2.2、嵌入式web服务器的移植论文网http://www.youerw.com/
(1) 下载、安装并编译Boa源码
从h下载最新的boa 的源码,其版本为0.94.13。
(2) 解压并进入源码目录的src子目录,修改Makefile文件,修改交叉编译器,执行make 编译,生成的在开发板上的可执行程序Boa,通过命令将调试信息剥去,得到的最后程序大约60 KB 大小,减少所占空间。
具体配置如下:
[root@localhost work]$tar xvzf boa-0.94.13.tar.gz 解压源码包
[root@localhost work]$cd boa-0.94.13/src 进到源码目录
[root@localhost src]$./configure 配置并生成Makefile
修改src/Makefile 文件:
找到 CC=gcc 改成 CC = arm-linux-gcc
找到 CPP=gcc –E 改成 CPP = arm-linux-gcc –E
修改src/compat.h:
找到#define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
修改成#define TIMEZONE_OFFSET(foo) (foo)->tm_gmtoff
然后进行Make
[root@localhost src]$make 编译
[root@localhost src]$arm-linux-strip boa 将最终程序boa 中的调试信息剥去,减小其体积
3.2.3、嵌入式web服务器的配置
在Linux 操作系统下,应用程序的配置都是以配置文件的形式提供的,Boa启动时需要一个配置文件boa.conf,在程序运行前,要根据当前环境修改文件实现对Web服务器的配置。修改/boa-0.94.13/boa.conf 文件如下表:
表: 3-1 boa.conf修改配置
原文 更改本文来自优.文~论-文·网原文请找腾讯32491.14
1 Group nogroup Group 0
2 ScriptAlias /cgi-bin /usr/lib/cig-bin/ ScriptAlias /cgi-bin /var/www/cgi-bin/
3 #ServerName 去掉前面的#号
本文Boa的可执行文件boa放在/usr/sbin下,配置文件boa.conf放在目标板
/etc/boa目录下,还有mime.types文件也拷贝在/etc目录下,日志文件放在 /var/log/boa 目录下,指定的HTML页面放到/var/www目录下,cgi外部扩展程序放到/var/www/cgi-bin目录下。
3.3、实现web页面的cgi技术
CGI (Common Gateway Interface) 是一段运行在“Web服务器上的程序,提供同客户端的HTML页面交互的一个标准接口 [ ]。按照CGI 标准编写的外部扩展应用程序可以处理客户端浏览器输入的数据,完成客户端与服务器的交互操作”。
CGI程序工作原理为:“客户端的用户通过浏览器完成一定输入工作后,向服务器发出HTTP请求(称为CGI请求),服务器守护进程接收到该请求后,就创建一个子进程(称为CGI进程)” [ ]。该CGI子进程将CGI请求的有关数据设置成环境变量,在CGI 程序与服务器间建立两台数据通道,然后启动URL指定的CGI程序。子进程通过标准输出流处理结果作为应答消息回送到客户端。一个CGI程序的任务分为输入任务和输出任务。输入任务根据请求方法的不同,从环境变量QUERY STRING或标准输入中读取用户输入数据。输出类型任务生成HTTP响应头标内容,如消息正文的数据类型和数据长度等,生成HTTP响应消息正文内容,如动态生成的HTML文件内容。其工作流程示意图如图3-1和3-2所示[ ][ ] 。
上一页 [1] [2] [3] [4] [5] [6] 下一页