美文网首页
3 . boa webserver服务器(1)

3 . boa webserver服务器(1)

作者: wit_yuan | 来源:发表于2017-08-13 23:45 被阅读0次

1 基本介绍

boa出现的年代还算比较久远,但是其cgi毕竟是始祖级别,研究一下还是有必要的。

1.1 源码

boa官方网站为:链接

1.2 源码解压

我们获取的源码为:boa-0.94.13.tar包:

$ tar -xf boa-0.94.13.tar

解压出文件后,我们在用压缩包命令,将文件压缩成.gz格式文件,方便在windows上使用source insight软件打开。

$ tar -czf boa-0.94.13.tar.gz *

2 环境搭建

首先需要安装上两个工具:

$ sudo apt-get install bison
$ sudo apt-get install flex

现在假设在boa的根目录位置,我的位置如下:

wityuan@ubuntu:~/Downloads/boa/boa-0.94.13$

后面的操作我简单的使用$代表在源码的根目录下操作的。

首先,需要修改文件内容:
修改文件src/compat.h:

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

改为:

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

然后操作:

$ cd src
$ ./configure --prefix=/home/wityuan/Downloads/boa/boa-0.94.13/tmp
$ make
$ sudo mkdir /etc/boa
$ sudo cp ../boa.conf /etc/boa

接着我们需要修改boa.conf文件的内容:

$ cd /etc/boa/

更改:

#Group nogroup
Group 0
#ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
#AccessLog /var/log/boa/access_log

其中,#表示注释,在文件内部,我们找到#后面的内容,然后加上#下面的内容即可。

我们还需要修改源码src/log.c中的内容,如下图所示:


修改log.c文件中的内容

现在可以运行程序了。

由于在boa.conf中我们的端口为80,所以在运行的时候要注意加上sudo。

$ cd src/
$ sudo ./boa
[13/Aug/2017:15:34:09 +0000] boa: server version Boa/0.94.13
[13/Aug/2017:15:34:09 +0000] boa: server built Aug 13 2017 at 08:32:36.
[13/Aug/2017:15:34:09 +0000] boa: starting server pid=17974, port 80
 

我们在/var/www/下写一个index.html的文件:

$ cd /var/www

文件内容为:

<html>
<head>
<meta charset="utf-8"/>
<title>Upload</title>
</head>
<body>
    <h2>wit_yuan say hello world</h2>
</body>
</html>

我的本机ip为192.168.1.16,所以在浏览器上,可以输入:

http://192.168.1.16/index.html

我们在浏览器上可以看到:


浏览器显示结果

我们可以执行cgi程序,命名c文件cgitest,程序如下:

#include<stdio.h>
#include<stdlib.h>
int main(void)
{
     printf("Content-type:text/html\n\n");
     printf("<html>\n");
     printf("<head><title>CGI Output</title></head>\n");
     printf("<body>\n");
     printf("<h1>wit_yuan say hello world!</h1>\n");
     printf("<body>\n");
     printf("</html>\n");
     exit(0);
}

然后:

$ gcc cgitest.c -o cgitest
$ sudo cp cgitest /var/www/cgi-bin/

在浏览器中输入:

http://192.168.1.16/cgi-bin/cgitest

执行结果如下图所示:


CGI程序执行测试

相关文章

  • 3 . boa webserver服务器(1)

    1 基本介绍 boa出现的年代还算比较久远,但是其cgi毕竟是始祖级别,研究一下还是有必要的。 1.1 源码 bo...

  • 3 . boa webserver服务器(2)

    1 说明 本节主要是说明一些比较实用的功能,如文件的上传与下载等,这里不涉及到多用户的概念。 而这节最重要的内容是...

  • 移植boa出现的问题

    小型系统的轻量级WebServer主要有:lighttpd、thttpd、shttpd和boa等等。移植参考(ht...

  • 搭建boa服务器

    环境 Ubuntu16.04 创建目录 boa源码包准备 1.下载boa源程序包: boa服务器的配置编译 2.找...

  • 11.3

    今天学习了boa服务器的移植,在Linux系统下安装boa服务器,来修改参数。上午按照老师发的表修改了boa服务器...

  • DNS服务器实现域的主DNS服务

    目的: DNS服务器解析wangcloud.top 到webserver1 10.0.0.7 DNS服务器配合CD...

  • 嵌入式11月3日总结。

    今天学习了boa服务器的移植,在Linux系统下安装boa服务器。修改对应的参数。在移植了对应的网页设置。上午对应...

  • Mac Apache WebServer 服务器配置

    1、Apache WebServer 配置 为了保证电脑的安全,必须设置用户密码。 2、配置服务器: 配置服务器的...

  • Linux项目之LVS构建keepalive站点

    实验设备:4台相同版本服务器 环境要求: 实验说明: webserver 1:192.168.192.138web...

  • BOA 信用卡可以选择3%的category了!

    原文(更新、留言和联系):《BOA 信用卡可以选择3%的category了!》 2019.3更新:BOA 3% O...

网友评论

      本文标题:3 . boa webserver服务器(1)

      本文链接:https://www.haomeiwen.com/subject/jocyrxtx.html