CentOS7 boa服务器的搭建和配置

news2024/11/24 14:05:24

环境是CentOS7,但方法不局限于此版系统,应该是通用的。

具体步骤如下:

1. 下载boa源码

下载地址: Boa Webserver

下载后,进入压缩包所在目录,进行解压:

tar xzf boa-0.94.13.tar.gz

2. 安装需要的工具bison,flex

sudo yum install bison flex
#ubuntu: sudo apt-get install bison flex

#注意:不安装或者安装不成功都会导致后面make时出现错误127

3. 成Makefile文件

cd boa-0.94.13/src
./configure

 4. 配置boa,准备工作

1)Boa需要在/etc目录下建立一个boa目录,里面放入Boa的主要配置文件boa.conf

将解压出来的boa.conf复制到/etc/boa目录

sudo mkdir /etc/boa
sudo cp /home/web/boa-0.94.13/boa.conf /etc/boa/

2)修改配置文件/etc/boa/boa.conf重要的一步,否则后续会有很多报错

sudo gedit /etc/boa/boa.conf 管理员身份打开boa.conf,其他身份无法修改和保存boa.conf

注意:修改boa.conf等文件需要管理员身份,获取管理员身份方法有多种,推荐直接sudo gedit来打开

(1)Group的修改
        修改 “Group nogroup” 为 “Group 0”
(2)user的修改
        修改 “User nobody” 为 “User 0”
(3)修改ScriptAlias的路径
        修改“ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/” 为 “ScriptAlias /cgi-bin/ /var/www/cgi-bin/”
(4)去掉ServerName前面的注释符号#
        修改“#ServerName www.your.org.here” 为 “ServerName www.your.org.here”
        否则会出现错误: "gethostbyname::No such file or directory"
(5)注释掉AccessLog命令
        修改“AccessLog /var/log/boa/access_log” 为 “# AccessLog /var/log/boa/access_log”
        否则会出现错误提示: "Cannot open ... for logging:logfile open:Is a directory"

3)修改 boa-0.94-13/src/compat.h重要的一步,否则后续会有很多报错

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

        修改成

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

        否则会出现错误:util.c:100:1: error: pasting "t" and "->" does not give a valid preprocessing token make: *** [util.o] 错误 1

4 修改 boa-0.94-13/src/log.c重要的一步,否则后续会有很多报错

        将以下条件注释掉:

        #if 0

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

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

        }

        #endif

        否则会出现错误:log.c:73 unable to dup2 the error log:bad file descriptor

5 修改boa-0.94-13/src/boa.c重要的一步,否则后续会有很多报错

        #if 0

        if (setuid(0) != -1) {

                DIE(”icky Linux kernel bug!”);

        }

        #endif

  否则可能会出现错误:boa.c:228 、 boa.c:226

6)创建web服务器的文件根目录

sudo mkdir /var/www
sudo chmod -R 777 /var/www
#注意:boa.conf中指定的html文件存在位置

7)创建log目录

sudo mkdir /var/log/boa
sudo mkdir /var/log/boa/error_log
sudo mkdir /var/log/boa/access_log
sudo chmod -R 777 /var/log/boa
sudo chmod -R 777 /var/log/boa/error_log
sudo chmod -R 777 /var/log/boa/access_log

 8)创建CGI目录cgi文件存放目录

sudo mkdir /var/www/cgi-bin
sudo chmod -R 777 /var/www/cgi-bin

5. 编译

cd /home.boa-0.94.13/src/
make

6. 运行boa

执行boa-0.94.13/src/boa可执行文件

 

运行出现以下问题:

​​​​​​​

解决方法: 运行BOA报错 Could not open mime.types file, "/etc/mime.types", for reading-CSDN博客

 7. 测试

1)CGI程序测试

将 boa-0.94.13/examples目录下的 cgi-test.cgi 拷贝到 var/www/cgi-bin/

浏览器访问:http://127.0.0.1/cgi-bin/cgi-test.cgi

2)html网页测试

将html文件拷贝至/var/www/下

浏览器访问:http://127.0.0.1/html文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1588367.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

信息系统项目管理师——第23章组织通用管理

本章在第三版流程和知识管理的基础上新增了2节内容,从2023年上半年的考情来看来 选择题,考1分左右,知识点比较分散,刷下题,考前突击下即可。 案例题,不考。 论文题,不考。 1人力资源管理 1.人…

微服务学习(黑马)

学习黑马的微服务课程的笔记 导学 微服务架构 认识微服务 SpringCloud spring.io/projects/spring-cloud/ 服务拆分和远程调用 根据订单id查询订单功能 存在的问题 硬编码 eureka注册中心 搭建eureka 服务注册 在order-service中完成服务拉取 Ribbon负载均衡 Nacos注册中心…

结合ArcGIS+SWAT模型+Century模型:流域生态系统水-碳-氮耦合过程模拟

原文链接:结合ArcGISSWAT模型Century模型:流域生态系统水-碳-氮耦合过程模拟https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&tempkeyMTI2NV9sMGRZNUJoVkNVc1ZzSzRuMl9XXzhqX0R3cXpESWFwM1E4cFY4ejNqWFh3VUl0dlZkNWk4b20ydFdFTy1xS2ZObGN0Z0ZXSjly…

交流电源的频率如何测试

交流电源的频率是指每秒钟交流电源周期的数量,通常是50Hz和60Hz。但是在实际使用中会有一定的波动,一般交流电源频率的波动范围是10%。 交流电源频率的高低对电路有很大的影响,直接影响着电能质量和电路的稳定性。此外,交流电源的…

Docker核心特征

Docker的基本概念 Dockerfile:制作进行的文件,可以理解为制作镜像的一个清单。 镜像:用来创建容器的安装包,可以理解为给电脑安装操作系统的系统镜像。 容器:通过镜像来创建的一套运行环境,一个容器里可…

eBPF 主题分享:Kindling-OriginX 解密如何揭开可观测性盲区实现根因推导

“第二届eBPF开发者大会”将于2024年4月13日在陕西省西安市线下召开,由西安邮电大学主办。本次大会以“发挥eBPF技术力量,提升计算机系统可观测性和性能”为主题,涵盖了eBPF技术及发展、eBPF网络安全应用、eBPF可观测性及应用、软件性能工程等方面&#…

代理模式:控制对象访问的智能方式

在面向对象的软件开发中,代理模式是一种结构型设计模式,它为其他对象提供一个代理或占位符以控制对这个对象的访问。代理模式在实现权限控制、延迟初始化和远程对象访问等方面非常有用。本文将详细介绍代理模式的定义、实现、应用场景以及优缺点&#xf…

Tomcat以服务方式启动,无法访问网络共享目录问题

关于“Tomcat以服务方式启动,无法访问网络共享目录问题”解决方式如下: 1、通过doc命令【services.msc】打开本地服务找到,找到tomcat服务所在位置 2、右键打开Tomcat服务的属性 3、选择 登陆选项卡 4、选择“此账户”选项,并…

预告:(阶乘)+统计读取的单个字符+把我电脑给干关机了的题,还好在tmp里面找到(穷举法编程)+(双循环算法)+(最大公约数,最小公倍数)

在赶一篇作业出来 第一个: 题目:编程实现,求saaaaaaaa⋯an个a的值,其中a是一个数字。例如当a为2,n为5时,计算,2+22+222+2222+22222的值。 #inc…

elementUI 下拉框加提示文案

效果如下&#xff1a; 展示文案在最下面&#xff0c;跟选项有个分割线 <el-select v-model"value" placeholder"请选择" clearable popper-class"addNotice" class"addNoticeS" visible-change"(v) >selectNotice(v,展示…

物联网SaaS平台

在信息化、智能化浪潮席卷全球的今天&#xff0c;物联网SaaS平台作为推动工业数字化转型的重要工具&#xff0c;正日益受到广泛关注。那么&#xff0c;物联网SaaS平台究竟是什么&#xff1f;HiWoo Cloud作为物联网SaaS平台又有哪些独特优势&#xff1f;更重要的是&#xff0c;它…

Docker 学习笔记(三):Centos7 中 Docker 使用,镜像、容器,以及操作等常用命令小结

一、前言 记录时间 [2024-4-7] 前置文章&#xff1a; Docker学习笔记&#xff08;一&#xff09;&#xff1a;入门篇&#xff0c;Docker概述、基本组成等&#xff0c;对Docker有一个初步的认识 Docker学习笔记&#xff08;二&#xff09;&#xff1a;在Linux中部署Docker&#…

IDEA2023连接服务器docker并部署ruoyi-cloud-plus项目

文章目录 TCP 方式连接docker1. 服务器docker配置修改查看虚拟机中Docker配置文件位置修改配置文件重启docker服务关闭防火墙 2. idea安装docker插件3. idea连接docker服务 部署ruoyi-cloud-plus项目1. 项目环境说明2. 安装Centos73. 安装docker4. idea配置服务器SSH连接5. ide…

SHAP安装问题

一、安装 pip install shap -i https://pypi.tuna.tsinghua.edu.cn/simple 二、遇到问题 1、提示报错如下&#xff1a; ModuleNotFoundError: No module named numba.core 安装numba&#xff1a; pip install numba -i https://pypi.tuna.tsinghua.edu.cn/simple 提示已经…

【go从入门到精通】作用域,包详解

作者简介&#xff1a; 高科&#xff0c;先后在 IBM PlatformComputing从事网格计算&#xff0c;淘米网&#xff0c;网易从事游戏服务器开发&#xff0c;拥有丰富的C&#xff0c;go等语言开发经验&#xff0c;mysql&#xff0c;mongo&#xff0c;redis等数据库&#xff0c;设计模…

基于React封装Handsontable并兼容antd

背景 其实Handsontable官方也提供了React的版本&#xff0c;但是官方的版本再编辑和渲染的时候并不能够很好的嵌入第三方的组件库。这就导致了&#xff0c;使用了Handsontable就没有办和普通的react项目一样轻松引用其他第三方组件。因此对其react的版本进行了二次的封装&#…

MySQL之sql性能分析

sql执行频率 MySQL客户端连接成功后&#xff0c;通过show[session|global]status命令可以提供服务器状态信息。通过如下指令&#xff0c;可以查看当前数据库的所有INSERT、DELETE、UPDATE、SELECT的访问频次。 慢日志查询 慢查询日志记录了所有执行时间超过指定参数(longquer…

石子合并(区间dp)-java

石子合并问题是经典的区间dp问题&#xff0c;我们需要枚举中间端点k的情况从而来推出dp数组的值。 文章目录 前言 一、石子合并问题 二、算法思路 1.问题思路 2.状态递推公式 二、代码如下 代码如下&#xff08;示例&#xff09;&#xff1a; 2.读入数据 3.代码运行结果如下&am…

CY7.5-COOH荧光属性Cyanine7.5花菁染料

CY7.5-COOH&#xff0c;作为一种Cyanine 7.5花菁染料&#xff0c;在荧光属性上表现出色。其独特的化学结构赋予了它荧光性质&#xff0c;使其在生物标记、荧光成像和光学传感等领域具有诸多应用前景。 CY7.5-COOH具有出色的荧光量子产率&#xff0c;这意味着在激发光的照射下&…

电商市场价格治理的有效方法

监测价格的目的是为了治理价格&#xff0c;品牌在发展过程中必然要做价格管控&#xff0c;否则任由渠道自由生长&#xff0c;最后的结果多是低价不断&#xff0c;且渠道愈发难以管控&#xff0c;所以在电商链接并不多时&#xff0c;也应对渠道进行监测、治理&#xff0c;将渠道…