Ubuntu 10.04——boa服务器的搭建

   声明:自从第一次发表博文不知不觉过去了好久了,非常抱歉没能把自己的东西分享出来,但是由于上家公司本月初裁员,所以致使学的新东西成了半成品,无奈又换了一家,目前已工作三周了,自己也很想写博文分享知识,但是学的东西太杂,有都是半成品,确实不知道以什么为切入点,目前这家公司最近一直在做项目,我想先一点点的写吧,虽然我的东西能在网上找到很多样本,但是我感觉有的不全,还是自己总结的东西比较靠谱,希望对大家有所帮助,如果有新问题,我会不断更新的,好了,废话不多说了。。。

               Ubuntu 10.04配置boa服务器

一、下载boa源码(root权限下的命令行):

  # wget http://www.boa.org/boa-0.94.13.tar.gz

  解压:# tar zxvf boa-0.94.13.tar.gz

(解压前建议单独建立一个boa文件:# mkdir boa)

二、安装需要的工具:bison、flex;

(这两个工具我也没弄清楚具体干什么的,在网上查查只知道是什么语法解析器和扫描器,我看网上大部分说明都有这个步骤)

  # apt-get install bison flex

三、生成Makefile文件:

  # cd boa-0.94.13/src

  # ./configure

四、为了保证make不出现错误的话必须修改一些文件:

(为了更方便了解以下步骤的操作目的,建议再打开一个终端,打开相应文件对比着看就明白了)

1、boa配置文件 boa.conf 的路径的设定:

此文件的路径应与src/defines.h 中SERVER_ROOT "/etc/boa" 的值一致:

  # cd /etc/

  # mkdir boa

  # cp /home/qiang/share/boa/boa-0.94.13/boa.conf /etc/boa -R(前面是我的文件所在目录)

  之后再回到boa/src下:# make

  这时会报错:

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

修改compat.h:

  # vi compat.h(在编辑模式下:/foo##快速找到以下语句)

将 #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff 改为:

#define TIMEZONE_OFFSET(foo) foo->tm_gmtoff

修改boa.c:

  # vi boa.c

将以下四行注释掉:

    if(setuid(0) != -1)

    {   

      DIE(”icky Linux kernel bug!”);

    }

否则启动boa时会出现:

boa.c:226 - icky Linux kernel bug!No such file or directory!

(有的版本中没有这个提示,但是我的出现了,所以经过查找才得以解决)

  # make

五、在启动src/boa前需修改配置文件:

  # vi /etc/boa/boa.conf

1、修改 servername 去掉注释(#),修改User nobody 和 Group nogroup 改为 User 0 、Group 0;

2、定义的是web服务器的文件根目录,即设定的值 DocumentRoot 默认为 "/var/www"

  # cd /var/

  # mkdir www

  # chmod 777 www

3、配置日志文件的目录及日志文件:

(1)错误报告 ErrorLog 默认位置:/var/log/boa/error_log

(2)访问报告 AccessLog 默认位置:/var/log/boa/access_log

  # mkdir log/boa -p(/var目录下)

  # chmod 777 log/boa -R

  # touch error_log/touch access_log

(这两个文件可以帮助你查看后期操作游览器的访问状态信息)

4、cgi程序的存放:

  # vi /etc/boa/boa.conf

将最后一行 ScriptAlias  /cgi-bin  /usr/lib/cgi-bin/ 改为:

ScriptAlias  /cgi-bin  /var/www/cgi-bin(用于存放.cgi文件)

(建议后期在web开发下自己创建www文件夹时创建cgi-bin文件夹,再后期运行时可直接将整个www文件下的文件全部cp过来)

  启动boa服务器:

切换到初期解压的源码目录下: # cd src/

  # ./boa

ps -e 查看是否存在 boa 进程,若无,则查看错误报告,若提示:

[23/Apr/2012:23:58:59 +0000] boa.c:194 -unable to bind:Address already in use

此句表示端口被占用,boa服务器默认的端口是 80 ,比如 ngix 服务器默认的端口也是 80 ,所以会存在这种情况的发生,为了避免这一错误,我们一般修改端口为8080:

  # vi /etc/boa/boa.conf

将 Port 80 改为 Port 8080

此时再 ps -e 查看进程,若存在 boa 则证明成功!好了,kill掉进程重启一下进行测试吧!

六、测试程序:

在/var/www/下建立index.html文件:# vi index.html(没法插如图片,只能粘贴如下)

<!DOCTYPE html>

<html>   

  <head>     

    <meta http-equiv="content-type" content="text/html; charset=gb2312" />     

    <title>This is a test program!</title>   

  </head>
  <body>     

    <h1>This is a test!</h1>     

    <br />     

    <br />     

    <a href="./cgi-bin/test.cgi">To cgi page!</a>    

  </body>

</html>

  # mkdir /var/www/cgi-bin -R

  # cd cgi-bin

  # vi test.c

  include <stdio.h>

  int main()   

  {     

    printf("Content-type:text/html\n\n");// 这句必须存在;     

    printf("<html><body>");     

    printf("<font style=\"color:red;font-size:30px;\">Hello CGI!</font><br />");     

    printf("<a href=\"../index.html\">return index.html</a>");     

    printf("</body></html>");     

    return 0;   

  }

  # gcc test.c -o test.cgi

然后打开游览器,输入虚拟机地址或127.0.0.1:8080(端口号已改),这样就能看到刚刚写的页面了。。。

时间: 2024-10-06 16:54:27

Ubuntu 10.04——boa服务器的搭建的相关文章

Ubuntu 10.04下架设流媒体服务器

Ubuntu 10.04下架设流媒体服务器 个人建议:使用DarwinStreamingSrvr5.5.5,因为DarwinStreamingSrvr6.0.3安装过程中有很多问题需要解决! 目前主流的流媒体服务器有微软的windows media server.RealNetworks的Helix server和苹果公司的Darwin Streaming Server. 微软的windows media server只能在windows 2000 server和windows 2003 ser

ubuntu 10.04 vpn搭建

1.环境: cat /etc/issue Ubuntu 10.04.4 LTS \n \l 2.安装 apt-get install pptpd3.查看 ps  aux |grep  pptp root     18778  0.0  0.0   1980   648 ?        Ss   01:33   0:00 /usr/sbin/pptpd 4.配置/etc/pptpd.confsudo vim /etc/pptpd.conf添加下面两行(在配置文件的最后取消注释修改IP即可)loc

Ubuntu 14.04 FTP服务器--vsftpd的安装和配置

http://jingyan.baidu.com/article/67508eb4d6c4fd9ccb1ce470.html Ubuntu 14.04 FTP服务器--vsftpd的安装和配置 我们经常需要将本地的文件上传到远程的Ubuntu 14.04服务器上,或者把远程Ubuntu 14.04服务器上的文件下载到本地,这就需要用到vsftpd来搭建FTP服务,现在介绍一下如何在Ubuntu 14.04上安装和配置vsftpd 工具/原料 Ubuntu 14.04 WinSCP 5.5.4 方

分布式进阶(四)Ubuntu 10.04下安装Tomcat 6

Ubuntu 10.04下安装Tomcat 6 1,下载apache-tomcat6, 地址链接:http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.28/bin/ 选择Ubuntu Linux适用版本,即apache-tomcat-6.0.28.tar.gz文件, 2,复制安装文件到/usr/local/目录下面,在控制台console输入命令, sudo cp /home/shq/桌面/apache-tomcat-6.0.28.tar.gz

Ubuntu 14.04 Virtual Judge 的搭建

Ubuntu 14.04 Virtual Judge 的搭建 博客的排版可能不是很好,可以下载本文的PDF: Ubuntu 14.04Virtual Judge 的搭建 本人是一名ACM弱菜,由于集训队需要, 我们决定架设自己的OnlineJudge和Virtual Judge,于是开始了噩梦般的搭建. OJ的搭建,非常顺利,参考的是 Ubuntu Server 12.04搭建hustoj 这篇博客 写得非常好,其他不多说,如果有需要搭建自己学校的OJ的朋友,可以参考, 主要就是架设LAMP,其

【转】Ubuntu 10.04 LTS 的窗口控制按钮从左上角调整到右上角

原文网址:http://www.linuxidc.com/Linux/2010-05/26111.htm 升级到Ubuntu 10.04后最大的问题,是最小最大和关闭按钮,放到了左边.这叫Ubuntu的MAC化.这给操作带来了很大的不便.大部分的theme的窗口关闭按钮都放到左边去了.每次有窗口操作,不得不左右寻找,降低了效率. 改改即可: 窗口功能按钮的位置取决于一个配置文件.我们将使用图形界面“gconf-editor”修改这个配置文件. 按下“Alt + F2”组合键,在弹出的运行应用程序

在虚拟机下安装ubuntu 10.04 64bit,并修改root用户密码

实验的环境: 笔记本是:HP 虚拟机:VMware  9 准备安装的操作系统: ubuntu 10.04  64bit 实验步骤: 一:让自己的hp支持虚拟化技术(由于ubuntu 10.04  64bit需要CPU支持虚拟化技术,所以要通过bios来更改电脑的默认设置) 启动时根据提示按 Esc 键 按 F10 键以配置 BIOS 使用箭头键滚动到"System Configuration" 选择"Virtualization Technology",然后按 En

Using iSCSI On Ubuntu 10.04 (Initiator And Target)

This guide explains how you can set up an iSCSI target and an iSCSI initiator (client), both running Ubuntu 10.04. The iSCSI protocol is a storage area network (SAN) protocol which allows iSCSI initiators to use storage devices on the (remote) iSCSI

分布式进阶(三)Ubuntu 10.04 之JDK安装

Ubuntu 10.04 之JDK安装 1.从官网 (http://www.Oracle.com/technetwork/java/javase/downloads/jdk6u35-downloads-1836443.html)下载安装文件(如:jdk-6u45-linux-x64.bin).复制该文件到/usr/lib/java下,如果没有java文件夹,则创建它.sudo mkdir  -p  /usr/lib/jvm/java 安转文件默认是没有执行权限的,所以首先第一步是要将安装文件赋予