日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

boa服务器怎样运行,boa服务器的配置与编译

發(fā)布時間:2023/12/15 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 boa服务器怎样运行,boa服务器的配置与编译 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

上午看了下boa服務器的配置與編譯,還不算難。對我而言,重在理解概念就行。不過,還是基于PC。交叉編譯以后嘗試。

系統(tǒng):ubuntu10.04

boa版本:boa-0.94.13.tar.gz

內(nèi)核:linux2.6.32

相關理論:

Boa

是一種非常小巧的Web服務器,其可執(zhí)行代碼只有大約60KB左右。作為一種單任務Web服務器,Boa只能依次完成用戶的請求,而不會fork出新的進程來處理并發(fā)連接請求。但Boa支持CGI,能夠為CGI程序fork出一個進程來執(zhí)行。Boa的設計目標是速度和安全。

CGI

在物理上是一段程序,運行在服務器上,提供同客戶端HTML頁面的接口。即客戶端與服務器的接口。

比如留言本的工作流程:先由用戶在客戶端輸入一些信息,如名字之類的東西。接著用戶按一下“留言”(到目前為止工作都在客戶端),瀏覽器把這些信息傳送到服務器的CGI目錄下特定的cgi程序中,于是cgi程序在服務器上按照預定的方法進行處理。在本例中就是把用戶提交的信息存入指定的文件中。然后cgi程序給客戶端發(fā)送一個信息,表示請求的任務已經(jīng)結(jié)束。此時用戶在瀏覽器里將看到“留言結(jié)束”的字樣。整個過程結(jié)束。

配置編譯boa服務,構(gòu)建一小型網(wǎng)頁服務器

使用ps -e查看是否開啟http服務,如果開啟,則關閉。

1.下載boa-0.94.13.tar.gz源碼

解壓在/home/xxxx/boa-0.94.13目錄中。

2.編譯

在/home/xxxx/boa-0.94.13/src/目錄中存放的是boa的源碼,在源碼目錄下配置與編譯。

執(zhí)行./configure

這是根據(jù)configure.in文件進行一系列的配置,生成config.status,configure,和Makefile文件。

如果現(xiàn)實無法執(zhí)行,要修改該目錄下的configure的屬性為可執(zhí)行

chmod 755 configure

3.make

這個編譯的是服務程序,在該目錄下生成一個可執(zhí)行文件boa

編譯過程出現(xiàn)錯誤:

i.

lex boa_lexer.l

make: lex: Command not found

解決:apt-get install flex

編譯一個linux下的c系統(tǒng),包含詞法和語法分析模塊,Linux上用bison和flex。

yacc是一個文法分析器的生成器,bison即是yacc的GNU版本.Lex和YACC是用于構(gòu)造詞法分析機和語法解釋器的工具,利用Lex和YACC你可以輕松的構(gòu)造一個語法解釋器。所以要安裝flex。

ii:

gcc -g -O2 -pipe -Wall -I. -c -o util.o util.c

util.c:100:1: error: pasting "t" and "->" does not give a valid preprocessing token

make: *** [util.o] Error 1

解決:

修改 src/compat.h

#define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff

修改成

#define TIMEZONE_OFFSET(foo) (foo)->tm_gmtoff

如果有出現(xiàn)其他錯誤的,可以參看網(wǎng)頁

總結(jié)的很詳細。

4.修改配置文件

修改boa-0.94.13目錄下boa.conf

下面是我的配置

User nobody

Group nogroup

ErrorLog /var/log/boa/error_log

AccessLog /var/log/boa/access_log

DocumentRoot /www ? --web服務啟動的目錄在根目錄下的/www

UserDir public_html

DirectoryIndex index.html ?--目錄的索引文件 默認首頁

DirectoryMaker /usr/lib/boa/boa_indexer

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

......

將配置好的boa.conf復制到/etc/boa目錄下。這是個默認目錄。

把www文件復制到根目錄下。

5.啟動web服務

執(zhí)行./boa

出錯:unable to dup2 the error log: Bad file descriptor

修改log.c

注釋掉

if (dup2(error_log, STDERR_FILENO) == -1) {

DIE("unable to dup2 the error log");

}

過后要重新編譯。

make clean

make

即可啟動web服務

在firefox瀏覽器中輸入虛擬機的IP地址,即可進入women預先設定的主頁。

交叉編譯的可以參考下面的網(wǎng)頁

總結(jié)

以上是生活随笔為你收集整理的boa服务器怎样运行,boa服务器的配置与编译的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。