boa on fl2440

boa是一個開源web server,簡單小巧,很適合嵌入式場合

 下載最新的boa源碼,版本是0.94.14rc21

http://www.boa.org/

先安裝兩個包,否則可能configure通不過

sudo apt-get install bison flex

./configure

cd src

vi Makefile

修改編譯器gcc爲相應的arm-linux-gcc

CC=arm-linux-gcc

CPP=arm-linux-gcc -E

返回根目錄

cd ..

make

在src目錄下生成可執行文件boa

這裏值得一說的是log.c裏面有一個error_log_name默認是沒有指定的,如果需要的話自己指定以下,不需要的話就把它註釋掉,否則boa啓動回報錯

我是這樣處理的,跳過整個if,這樣就不需要error log了

log.c line 53

    if (0/*error_log_name*/) {
 49         int error_log;
 50 
 51         /* open the log file */
 52         error_log = open_gen_fd(error_log_name);
 53         if (error_log < 0) {
 54             DIE("unable to open error log");
 55         }

另外還需要一些配置文件

boa根目錄下有個example,裏面有boa.conf

修改一下配置,以下是從別人那裏靠的,記錄下來當作參考:

#vi boa.conf

(1)Group的修改

修改 Group nogroup

爲 Group 0

(2)user的修改

修改 User nobody

爲 User 0

(3)ScriptAlias的修改

修改ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

爲 ScriptAlias /cgi-bin/ /www/cgi-bin/

(5)DoucmentRoot的修改

修改DoucmentRoot /var/www

爲DoucmentRoot /www

(6)ServerName的設置

修改#ServerName www.your.org.here

爲 ServerName www.your.org.here

否則會出現錯誤“gethostbyname::No such file or directory”

(7)AccessLog修改

修改AccessLog /var/log/boa/access_log

爲#AccessLog /var/log/boa/access_log

否則會出現錯誤提示:“unable to dup2 the error log: Bad file descriptor”

(8)以下配置和boa.conf的配置有關,都是在ARM根文件系統中創建

以下步驟在開發板上進行:

創建目錄/etc/boa並且把boa 和 boa.conf拷貝到這個目錄下

mkdir /etc/boa

創建HTML文檔的主目錄/www

mkdir /www

創建CGI腳本所在錄 /www/cgi-bin

mkdir /www/cgi-bin

以下步驟在ubuntu下進行:

將boa.conf拷貝到開發板根文件系統的/etc/boa下

#cp boa.conf /source/rootfs/etc/boa

將boa拷貝到開發板根文件系統的/etc/boa下

#cp src/boa /source/rootfs/etc/boa

將ubuntu下/etc/mime.types拷貝到開發板根文件系統的/etc下

#cp /etc/mime.types /source/rootfs/etc

將你的主頁index.html拷貝到www目錄下

./boa&


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章