首页 > 系统相关 >Boa服务器 | Ubuntu下编译、安装Boa

Boa服务器 | Ubuntu下编译、安装Boa

时间:2023-03-27 15:02:00浏览次数:49  
标签:fly 13 SUDO Ubuntu vm 服务器 boa Boa DIR


目录

1.系统

2.下载

3.编译、安装

4.测试

5.参考


1.系统

[fly@fly-vm boa]$ uname -a
Linux fly-vm 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

2.下载

官网:http://www.boa.org/

### 下载最新发布版代码
[fly@fly-vm boa]$ wget http://www.boa.org/boa-0.94.13.tar.gz

3.编译、安装

[fly@fly-vm boa]$ tar -zxvf boa-0.94.13.tar.gz
[fly@fly-vm boa]$ cd boa-0.94.13/src/
[fly@fly-vm src]$ ./configure --prefix=$PWD/_install
[fly@fly-vm src]$ make

make出现如下错误

gcc  -g -O2 -pipe -Wall -I.   -c -o util.o util.c
In file included from boa.h:50:0,
                 from util.c:26:
util.c: In function ‘get_commonlog_time’:
util.c:100:39: error: pasting "t" and "->" does not give a valid preprocessing token
         time_offset = TIMEZONE_OFFSET(t);
                                       ^
compat.h:120:30: note: in definition of macro ‘TIMEZONE_OFFSET’
 #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff
                              ^
<builtin>: recipe for target 'util.o' failed
make: *** [util.o] Error 1

Boa服务器 | Ubuntu下编译、安装Boa_Test

Boa服务器 | Ubuntu下编译、安装Boa_html_02

修改以上两处地方,然后make clean后,重新make编译

在boa-0.94.13/src目录下,新建install.mk文件,使用Makefile命令install和uninstall安装和卸载软件及软件配置信息:

.PHONY: all install uninstall test

SRC_PWD 	= $(PWD)
SUDO		= sudo
MKDIR		= mkdir -p
CP			= cp -rf
RM			= rm -rf 

BIN_BOA		= boa
BIN_INDEX 	= boa_indexer

CONF_FILE 	= ../boa.conf 

DIR_CONF	= /etc/boa
DIR_LOG		= /var/log/boa
DIR_ROOT	= /var/wwwBoa
DIR_MAKER	= /usr/lib/boa
DIR_CGI		= /var/wwwBoa/cgi-bin

all:install

install:
	@echo "Install boa."
	$(SUDO) $(MKDIR) $(DIR_CONF) $(DIR_LOG) $(DIR_ROOT) $(DIR_MAKER) $(DIR_CGI) && \
		$(SUDO) $(CP) $(SRC_PWD)/$(CONF_FILE) $(DIR_CONF) && \
		$(SUDO) $(CP) $(SRC_PWD)/$(BIN_BOA) /usr/bin && \
		$(SUDO) $(CP) $(SRC_PWD)/$(BIN_INDEX) $(DIR_MAKER) && \
		$(SUDO) $(CP) $(SRC_PWD)/../examples/index.html $(DIR_ROOT)

uninstall:
	@echo "Uninstall boa."
	$(SUDO) $(RM) /usr/bin/boa
	$(SUDO) $(RM) $(DIR_CONF)
	$(SUDO) $(RM) $(DIR_LOG)
	$(SUDO) $(RM) $(DIR_ROOT)
	$(SUDO) $(RM) $(DIR_MAKER)

test:
	@echo "-------This is a Test.---------"
	@echo $(SRC_PWD)

编译后安装:

[fly@fly-vm src]$ make -f install.mk install
Install boa.
sudo mkdir -p /etc/boa /var/log/boa /var/wwwBoa /usr/lib/boa /var/wwwBoa/cgi-bin && \
        sudo cp -rf /home/fly/workSpace/boa/gitee/boa-0.94.13/src/../boa.conf  /etc/boa && \
        sudo cp -rf /home/fly/workSpace/boa/gitee/boa-0.94.13/src/boa /usr/bin && \
        sudo cp -rf /home/fly/workSpace/boa/gitee/boa-0.94.13/src/boa_indexer /usr/lib/boa && \
        sudo cp -rf /home/fly/workSpace/boa/gitee/boa-0.94.13/src/../examples/index.html /var/wwwBoa

运行(报错):

[fly@fly-vm ~]$ boa
[12/Jun/2021:01:16:39 +0000] log.c:73 - unable to dup2 the error log: Bad file descriptor

修改如下地方:

Boa服务器 | Ubuntu下编译、安装Boa_Test_03

重新编译后安装运行(运行成功,可以查看进程PID是5458,通讯端口号是8080):

[fly@fly-vm ~]$ sudo boa
[12/Jun/2021:01:23:11 +0000] boa: server version Boa/0.94.13
[12/Jun/2021:01:23:11 +0000] boa: server built Jun 12 2021 at 09:21:40.
[fly@fly-vm ~]$ [12/Jun/2021:01:23:11 +0000] boa: starting server pid=5458, port 8080

[fly@fly-vm ~]$ nmap localhost

Starting Nmap 7.01 ( https://nmap.org ) at 2021-06-12 09:23 CST
[12/Jun/2021:01:23:24 +0000] request from 127.0.0.1 "(null)" ("(null)"): header read: Connection reset by peer
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00018s latency).
Not shown: 993 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
111/tcp  open  rpcbind
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
631/tcp  open  ipp
2049/tcp open  nfs
8080/tcp open  http-proxy

Nmap done: 1 IP address (1 host up) scanned in 0.08 seconds

4.测试

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Flyer</title>
    </head>
    <body>
        <h1>This is a Test.</h1>
        <p>Hello , Wolrd.</p>
    </body>
</html>

在浏览器地址栏输入地址访问:http://192.168.1.132:8080/

Boa服务器 | Ubuntu下编译、安装Boa_Test_04

5.参考

5.1 BOA服务器移植

5.2 boa服务器之boa.conf文件的基本配置详解

5.3 boa项目代码Gitee仓库地址

标签:fly,13,SUDO,Ubuntu,vm,服务器,boa,Boa,DIR
From: https://blog.51cto.com/u_13472468/6152140

相关文章

  • NTP时间服务器
    目录前言安装配置方式一配置方式二其它GMT、UTC、CST、DST时间参考前言大数据产生与处理系统是各种计算设备集群的,计算设备将统一、同步的标准时间用于记录各种事件......
  • 织梦CMS如何能实现直接粘贴把图片上传到服务器中
    图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的base64码目前限chrome浏览器使用首先以um-editor的二进制流保存为例:打开umeditor.js,找到UM.......
  • Ubuntu 虚拟机搭建
    一、基础版本二、搭建步骤三、基础环境配置 一、基础版本外部系统:Windows10虚拟机环境:VirtualBox7.0Ubu......
  • CentOS/Ubuntu 安装 Docker和Portainer
    在两个环境下安装了Docker及Portainer,记录下以供日后查阅CentOS7部分1.清理旧版本$sudoyumremovedocker\docker-client\docker-c......
  • 动易CMS如何能实现直接粘贴把图片上传到服务器中
    这种方法是servlet,编写好在web.xml里配置servlet-class和servlet-mapping即可使用后台(服务端)java服务代码:(上传至ROOT/lqxcPics文件夹下)<%@ page language="java" impo......
  • Ubuntu给Appimage创建快捷方式
    下载AppImageLauncher2.安装3.选择要运行的Appimage双击运行即可。他会在home目录下创建一个applications文件夹,并且帮你自动创建快捷方式。......
  • RK3588开发板编译Ubuntu-全自动编译
    我们进入源码根目录执行以下命令自动完成所有的编译。如果想自动全编译Ubuntu文件系统,输入以下命令:exportRK_ROOTFS_SYSTEM=ubuntu./build.sh输入上面的命令后,会自动编译......
  • System.Web.Services.Protocols.SoapException: 服务器无法处理请求。
    在postman调用webservice时提示这个,但是用网页可以调用。<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-enve......
  • Windows系统服务器如何磁盘挂载
       桌面远程登录服务器后,服务器桌面上只有一个回收站的,我们在桌面空白处右键属性-->桌面-->自定义桌面-->然后把我的电脑前面的框框勾上,再然后点应用、确定,ok回到桌面我......
  • Ubuntu 更换国内清华源
    Ubuntu更换镜像源通常我们使用ubunntu的时候总是出现网络过慢导致的更新下载失败等问题。Ubuntu默认的服务器是在国外,自然连接就很慢。这里我们更换成国内的镜像源,这里......