zoukankan      html  css  js  c++  java
  • CentOS下搭建BOA及配置

      最近接受一个活,要用到BOA,遂在网上找资料搭环境,看了很多教程,总结如下:

    一、搭建的环境

      CentOS5(我是在虚拟机理安装的);

    二、准备工作

      1、上BOA官网(www.boa.org)下载BOA源码,我下载的是最新的发行版0.94.13;

      2、解压下载的文件,linux下解压命令:tar -xzf  [packname].tar.gz,这里假定解压缩后的文件名为boa,且放在根目录下;

      3、确保你的Linux装有gcc;

    三、安装

      1、打开命令终端;

      2、进入解压后的boa/src目录: #cd boa/src

      3、执行configure:#./configure

      4、修改修改compat.h中的

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

       也就是将后面的注释取消,不注释掉编译会出错,错误提示是:util.c: 100: 1: pasting “t” and “->” does not give a valid preprocessing token make: [util.o] Error1

      5、这一步是可选项,修改defines.h中的 #define SERVER_ROOT "/etc/boa",这一句声明BOA站点的根目录,要指定自己想要的根目录,将后面的"/etc/boa"修改为相应的路径即可,这里假定你的根目录就是"/etc/boa";

      6、修改boa.c文件,找到下面这句:    

        if (setuid(0) != -1) {
          DIE("icky Linux kernel bug!");
        }

        注释或删除这句,原因不清楚,如果不注释会出现的后果后面会说到。

      7、编译:#make

      8、将生成的可执行的文件boa复制到usr/bin或/usr/local/bin中。

    四、配置

      1、在/etc目录下建立boa目录,这就是boa的根目录。

      2、回到boa源代码目录/boa,将目录下的boa.conf文件复制到/etc/boa目录下,就是根目录下;

      3、修改boa.conf文件(可选,此文件只是对boa的配置管理):

        a、修改访问权限:修改User nobodyUser 0,修改Group nogroupGroup 0

        b、设定日志目录:boa 日志有两部分,Errorlog 和AccessLog,一般情况下为/var/log/boa/error_log和/var/log/boa/access_log 两个文件。所以根据自己的情况情况设置日志目录:

          ErrorLog /etc/boa/log/error_log
          AccessLog /etc/boa/log/access_log
        注意:这里/var/log/boa 目录必须为可写,否则会出现错误:log.c:73 – Unable to dup2 the error log: Bad。

        c、设置html 文件目录: DocumentRoot /etc/boa/html

        d、设置默认首页: DirectoryIndex index.html

        e、设置cgi 脚本目录: 将

          ScriptAlias /cgi-bin/ /usr/lib/cgi-bin
        修改为
          ScriptAlias /cgi-bin/ /etc/boa/cgi-bin
        这些目录可以自己修改,但是要和网页存放的目录一致。

       4、根据3.b创建 /etc/boa/log/error_log文件和/etc/boa/log/access_log文件;

       5、根据3.c创建/etc/boa/html目录;

       6、根据3.e创建/etc/boa/cgi-bin目录;

       7、根据3.d在/etc/boa/html目录下新建index.html文件;

         8、要测试cgi程序,可以在/etc/boa/cgi-bin目录下放置cgi程序;

    五、测试是否成功

      在linux下浏览器中输入你的linux的IP(查看方法#ifconfig),若显示你编写的index.html的内容,恭喜你成功了,此时查看/etc/boa/log/access_log文件,会发现里面有记录访问信息。

    若访问失败,可以查看/etc/boa/log/error_log文件,这里会记录一些失败的原因,若出现“icky Linux kernel bug!”,请参照第三项第6点。其他错误请问度娘。

  • 相关阅读:
    最短路径的三种实现方法
    c/c++小知识
    c++ char * const p问题
    C++ typedef 四个用途
    [转]c++面向对象基础
    [转]C++中引用(&)的用法和应用实例
    表情包。
    linux基础学习
    redis缓存在项目中的使用
    关于redis
  • 原文地址:https://www.cnblogs.com/dragon-aslan/p/3498872.html
Copyright © 2011-2022 走看看