一、Boa程序的移植
1、下載Boa源碼
下載地址: http://www.boa.org/
目前最新發(fā)行版本: 0.94.13 (幾年沒更新版本了)
下載 boa-0.94.13.tar.gz,
注意:若從boa上下載的是boa-0.94.13.tar.tar,解壓方式一樣 2、生成Makefile文件
解壓:
[tekkamanninja@Tekkaman-Ninja source]$tar xzf boa-0.94.13.tar.gz
進入boa-0.94.13,直接運行src/configure文件
[tekkamanninja@Tekkaman-Ninja src]$./configure
3、修改Makefile文件(注意:必須用cross-2.95.3, 如使用3.4.1、4.1.1等等會出錯)
CC = /home/tekkamanninja/working/source/2.95.3/bin/arm-linux-gcc
CPP = /home/tekkamanninja/working/source/2.95.3/bin/arm-linux-gcc -E
4、交叉編譯
|
5、去除調試信息,減小體積。(可選)
|
6、將編譯好的程序放入根文件系統(tǒng)的/bin目錄下。
|
二、配置Boa
Boa需要在/etc目錄下建立一個boa目錄,里面放入Boa的主要配置文件boa.conf。在Boa源碼目錄下已有一個示例boa.conf,可以在其基礎上進行修改。
[tekkamanninja@Tekkaman-Ninja src]$ cd ../..
[tekkamanninja@Tekkaman-Ninja source]$ cd ../nfs/rootfs/etc/
[tekkamanninja@Tekkaman-Ninja etc]$ mkdir boa
[tekkamanninja@Tekkaman-Ninja etc]$ chmod 777 boa/
[tekkamanninja@Tekkaman-Ninja etc]$ cd boa
[tekkamanninja@Tekkaman-Ninja boa]$ kwrite 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
注意:該項默認為未打開,執(zhí)行Boa會異常退出,提示“gethostbyname::No such file or directory”,所以必須打開。其它默認設置即可。你也可以設置為你自己想要的名字。比如我設置為:ServerName tekkaman2440
此外,還需要:
將mime.types文件復制/etc目錄下,通??梢詮膌inux主機的 /etc目錄下直接復制即可。
(以下配置和boa.conf的配置有關)
創(chuàng)建日志文件所在目錄/var/log/boa
創(chuàng)建HTML文檔的主目錄/var/www
創(chuàng)建CGI腳本所在錄 /var/www/cgi-bin
|
三、運行Boa
開發(fā)板操作:
[root@~]#boa
如果發(fā)現(xiàn)boa沒有運行,則可以在開發(fā)板的/var/log/boa/error_log文件中找原因。
比如端口已被其他程序占用:
或是用戶設置錯誤等等,都可以查到。 |
四、功能測試
靜態(tài)網頁測試
將靜態(tài)網頁存入根文件系統(tǒng)的/var/www目錄下(可以將主機 /usr/share/doc/HTML/目錄下的index.html、homepage.css和img、stylesheet-images目錄復制到/var/www目錄下)
我參考《嵌入式Web服務器移植 》的做法如下:
在根文件系統(tǒng)的/var目錄下
|
直接在瀏覽器中輸入開發(fā)板的IP地址(比如我的是http://192.168.1.2) ,出現(xiàn)fedora的歡迎網頁。靜態(tài)HTML調試成功。
CGI功能測試
1、編寫HelloworldCGI.c程序
[tekkamanninja@Tekkaman-Ninja source]$ vi helloworldCGI.c
(主程序的程序開頭一定要用Tab,而不是空格,不然編譯可能不通過)
|
|
將helloworldCGI 拷貝至根文件系統(tǒng)的/var/www/cgi-bin/下
|
3.測試
瀏覽器輸入網頁出現(xiàn) Hello,world. 調試成功!
聯(lián)系客服