首页 > 其他分享 >BOA使用以及简析

BOA使用以及简析

时间:2023-10-28 21:34:02浏览次数:51  
标签:-- 使用 简析 usr conf boa var BOA

BOA是一个非常简洁快速的单任务http服务器。官网关于BOA介绍《Boa Webserver》。

下面简单从Buildroot下配置编译、服务启动、访问做个介绍,然后对服务流程做个简单的分析。

1 Buildroot下配置BOA

在Buildroot中配置boa:

Target packages
    ->Networking applications
        ->boa

编译完成后,输出如下文件到rootfs中:

/usr/sbin/boa--boa主程序。
/usr/lib/boa/boa_indexer--在DirectoryMaker配置,创建一个对DocumentRoot目录的访问。
/etc/boa/boa.conf--boa配置文件。
/etc/mime.types--定义了文件扩展名和Content-Type对照关系。关于MIMIE参考《MIME(多用途互联网邮件扩展类型)》。

2 BOA配置以及启动

2.1 修改boa.conf

下面是boa.conf主要配置,更多参考《Boa Webserver: Installation and Usage》。

# $Id: boa.conf,v 1.1 2004/10/09 02:48:37 andersen Exp $

# The "ServerRoot" is not in this configuration file.  It can be compiled
# into the server (see defines.h) or specified on the command line with
# the -c option, for example:
#
# boa -c /usr/local/boa

Port 80--boa提供服务的端口号。
#Listen 192.68.0.5
User nobody--配置启动boa服务的用户和组。 Group nogroup ErrorLog /var/boa/error_log--指定错误日志保存文件。 AccessLog /var/boa/access_log--指定访问日志保存文件。 #UseLocaltime--是使用UTC时间还是Local时间。 #VerboseCGILogs #ServerName www.your.org.here #VirtualHost DocumentRoot /var/www--HTML文件的根目录。 # UserDir: The name of the directory which is appended onto a user's home # directory if a ~user request is recieved. UserDir public_html DirectoryIndex index.html--HTTP服务的入口,被注释后使用DirectoryMake提供服务。 DirectoryMaker /usr/lib/boa/boa_indexer--在DocumentIndex没有配置时,创建对DocumentRoot目录的访问。 # DirectoryCache /var/spool/boa/dircache KeepAliveMax 1000KeepAliveTimeout 10 MimeTypes /etc/mime.types--MIME配置文件。 DefaultType text/plain #AddType application/x-httpd-cgi cgi # Alias /doc /usr/doc ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

根据boa.conf配置,需要做以下操作:

1. 创建ErrorLog和AccessLog。

mkdir /var/boa  -p
touch /var/boa/error_log
touch /var/boa/access_log

2. 编写/var/www/index.html文件。

<html>
<body>
<h1> 
ArnoldLu Home
</h1>
</body>
</html>

2.2 启动boa

启动boa:

boa &

2.3 访问boa web服务

输入服务器网址,即可访问boa提供的服务。

3 BOA简单分析

 boa读取boa.conf建立Socket提供http服务,HTTP Browser对HTTP Server发起请求,boa将index.html内容发送到Browser中。

标签:--,使用,简析,usr,conf,boa,var,BOA
From: https://www.cnblogs.com/arnoldlu/p/17793827.html

相关文章

  • oracle中concat函数与在mysql中的使用
    在Oracle中使用concat函数来做拼接:我们想要得到的效果: 对应的sql语句如下: MySQL的中使用:我们直接使用concat()函数就行 ......
  • 使用Ocelot搭建网关Gateway
    一、Ocelot官网和学习地址官网:https://threemammals.com/ocelotGit:https://github.com/ThreeMammals/Ocelot文档:https://ocelot.readthedocs.io/en/latest/index.html二、搭建网关Gateway1.新建一个WebAPI服务进程,独立进程完成网关请求转发,承上启下。......
  • Flutter在web平台使用iframe标签
    主要是针对web平台,在web平台中嵌入iframe标签,将其他网站嵌入在自己的页面当中。第一部分,只在web平台运行1.注册iframe组件platformViewRegistry.registerViewFactory("iframe-webview",(_){......});2.创建自己的iframe组件,并设置参数,宽高和加载的url等platformView......
  • Python 作用域:局部作用域、全局作用域和使用 global 关键字
    变量只在创建它的区域内可用。这被称为作用域。局部作用域在函数内部创建的变量属于该函数的局部作用域,并且只能在该函数内部使用。示例:在函数内部创建的变量在该函数内部可用:defmyfunc():x=300print(x)myfunc()函数内部的函数如上面的示例所解释的那样,变量x在......
  • Python 作用域:局部作用域、全局作用域和使用 global 关键字
    变量只在创建它的区域内可用。这被称为作用域。局部作用域在函数内部创建的变量属于该函数的局部作用域,并且只能在该函数内部使用。示例:在函数内部创建的变量在该函数内部可用:defmyfunc():x=300print(x)myfunc()函数内部的函数如上面的示例所解释的那样,变量x......
  • 什么是serialVersionUID,为什么我应该使用它?
    内容来自DOChttps://q.houxu6.top/?s=什么是serialVersionUID,为什么我应该使用它?Eclipse在缺少serialVersionUID时会发出警告。可序列化的类Foo没有声明一个类型为long的静态最终serialVersionUID字段。serialVersionUID是什么,为什么它很重要?请举一个缺少seri......
  • 为什么Spring和IDEA不推荐使用@Autowired注解,有哪些替代方案?
    引言在使用Spring框架和JetBrainsIDEA集成开发环境(IDE)进行Java开发时,你可能经常会遇到@Autowired注解。@Autowired是Spring框架中用于实现依赖注入的核心注解之一。然而,近年来,Spring和IDEA都不再推荐使用@Autowired注解,并提出了更好的替代方案。本文将详细分析为什么Spring和IDE......
  • 1、Keepalived原理使用
    keepalived是一个类似于layer3,4&5交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web......
  • 使用Rust语言进行ioctl
    首先需要引入nix库官方crate地址为:https://crates.io/crates/nix在里面可以查看文档和版本信息。nix里面有个nix::sys::ioctl模块,类似于C标准库的ioctl.h,用来进行ioctl操作。使用方法:修改Cargo.toml[dependencies]nix="0.27"代码对应......
  • 使用IDEA连接Mysql数据库
    前言IntelliJIDEA集成了众多插件,方便开发者使用,使用其自带的Database模块就可以很方便的配置、连接到数据库,本次操作以MySQL为例(本实验需提前装好Mysql和IDEA,如果还没安装可参考以下博客IntelliJIDEA下载安装及配置教程和mysql8.0.25安装配置教程)一、打开数据库服务器用管理员方......