一 、boa源码下载
通过boa源码官网下载boa源码,最新版本是0.94.13,下载链接:http://www.boa.org/boa-0.94.13.tar.gz
将文件拷贝到虚拟机ubuntu用户文件根目录下解压得到解压文件。
二 、boa源码文件修改
进入src目录,执行./configure生成Makefile
$cd src $./configure
修改define.h文件,修改内容如下:
#define SERVER_ROOT "/boa"
其中 /boa 为以后boa程序运行的配置文件boa.conf存放的路径
修改boa.c文件,注释掉如下程序段:
if (setuid(0) != -1) { DIE("icky Linux kernel bug!"); }
修改为:
#if 0 if (setuid(0) != -1) { DIE("icky Linux kernel bug!"); } #endif
将compat.h中的
#define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
修改为
#define TIMEZONE_OFFSET(foo) foo->tm_gmtoff
三、编译配置boa服务器
1.执行make生成可执行程序
#make
编译过程可能发生如下错误:
1)yacc -d boa_grammar.y
make: yacc: Command not found
make: * [y.tab.c] Error 127
解决办法:
apt-get install bison
2)lex boa_lexer.l
make: lex: Command not found
make: * [lex.yy.c] Error 127
解决办法:
apt-get install flex
2.建立安装目录
mkdir -p /boa /boa/www /boa/cgi-bin /boa/log
3.将需要的文件复制到安装目录中
1)将boa-0.94.13/src目录下生成的boa、boa_indexer二进制文件复制到/boa下
cp src/boa /boa cp src/boa_indexer /boa
2)将boa-0.04.13目录下的boa.conf文件复制到/boa下
cp boa.conf /boa
3)将/etc/mime.types复制到/boa目录
cp /etc/mime.tpes /boa
4.进入boa文件夹目录,修改boa.conf配置文件,boa启动时会加载该文件。
cd /boa vi boa.conf
需要修改内容如下:
... Port 8080 ... User 0 Group 0 ... ErrorLog /boa/log/error_log ... AccessLog /boa/log/access_log ... DocumentRoot /boa/www ... DirectoryMaker /boa/boa_indexer ... MimeTypes /boa/mime.types ... ScriptAlias /cgi-bin/ /boa/cgi-bin/
修改boa/文件夹权限
chmod 777 *
四、测试boa服务器
在/boa/www下新建测试index.html,内容如下:
<HTML> <HEAD> <TITLE>Hello World</TITLE> </HEAD> <BODY> Hello,my world! </BODY> </HTML>
运行boa:
./boa
确保ubuntu能上网,在浏览器中输入ubuntu的ip以及端口号,例如:
192.168.0.106:8080
结束boa程序:找到boa进程杀死即可。
拓展:将boa添加到系统环境变量
vi /etc/bash.bashrc
在文件尾部添加:
export PATH=$PATH:/boa
保存退出后更新系统环境变量:
source /etc/bash.bashrc
之后便可以直接在shell里面执行boa
- 本文固定链接: http://ttfde.top/index.php/post/424.html
- 转载请注明: admin 于 TTF的家园 发表
《本文》有 0 条评论