移植Boa Web服务器到ARM Linux系统

2014-11-24 12:02:49 · 作者: · 浏览: 2

一、Boa程序的移植


1、下载Boa源码
下载地址:
http://www.boa.org/
目前最新发行版本: 0.94.13 (几年没更新版本了)
下载 boa-0.94.13.tar.gz,


注意:若从boa上下载的是boa-0.94.13.tar.tar,解压方式一样
解压:



3、修改Makefile文件(注意:必须用cross-2.95.3, 如使用3.4.1、4.1.1等等会出错)



5、去除调试信息,减小体积。(可选)



6、将编译好的程序放入根文件系统的/bin目录下。




二、配置Boa


Boa需要在/etc目录下建立一个boa目录,里面放入Boa的主要配置文件boa.conf。在Boa源码目录下已有一个示例boa.conf,可以在其基础上进行修改。



1、Group的修改


2、ScriptAlias的修改


修改 ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
为 ScriptAlias /cgi-bin/ /var/www/cgi-bin/


这是在设置CGI的目录,你也可以设置成别的目录。比如用户文件夹下的某个目录。


3、ServerName的设置


修改 #ServerName www.your.org.here
为 ServerName www.your.org.here


注意:该项默认为未打开,执行Boa会异常退出,提示“gethostbyname::No such file or directory”,所以必须打开。其它默认设置即可。你也可以设置为你自己想要的名字。比如我设置为:ServerName tekkaman2440


此外,还需要:


mime.types文件复制/etc目录下,通常可以从linux主机的 /etc目录下直接复制即可。


(以下配置和boa.conf的配置有关)


创建日志文件所在目录/var/log/boa


创建HTML文档的主目录/var/www


创建CGI脚本所在录 /var/www/cgi-bin




三、运行Boa


开发板操作:


[root@~]#boa


如果发现boa没有运行,则可以在开发板的/var/log/boa/error_log文件中找原因。




四、功能测试


静态网页测试


将静态网页存入根文件系统的/var/www目录下(可以将主机 /usr/share/doc/HTML/目录下的index.html、homepage.css和img、stylesheet-images目录复制到/var/www目录下)


我参考《嵌入式Web服务器移植 》的做法如下:


在根文件系统的/var目录下



CGI功能测试


1、编写HelloworldCGI.c程序


[tekkamanninja@Tekkaman-Ninja source]$ vi helloworldCGI.c


(主程序的程序开头一定要用Tab,而不是空格,不然编译可能不通过)






将helloworldCGI 拷贝至根文件系统的/var/www/cgi-bin/下




3.测试


网页出现 Hello,world. 调试成功!