boa man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

BOA(8)									BOA(8)

NAME
       boa - a single-tasking high performance http server

SYNOPSIS
       boa [-c server_root] [-r chroot] [-d]

DESCRIPTION
       Boa is a single-tasking HTTP server. That means that unlike traditional
       web servers, it does not fork for each incoming connection, nor does it
       fork  many  copies  of itself to handle multiple connections. It inter‐
       nally multiplexes all of the ongoing HTTP connections, and  forks  only
       for  CGI programs (which must be separate processes.) Preliminary tests
       show Boa is more than twice as fast as Apache.

       The primary design goals of Boa are speed and  security.	 Security,  in
       the  sense  of  "can't  be  subverted  by  a malicious user", not "fine
       grained access  control	and  encrypted	communications".  Boa  is  not
       intended	 as  a	feature-packed server; if you want one of those, check
       out WN from John Franks. Modifications to Boa that improve  its	speed,
       security,  robustness,  and portability, are eagerly sought. Other fea‐
       tures may be added if they can be achieved without hurting the  primary
       goals.

OPTIONS
       -d     instruct Boa not to fork itself (non-daemonize).

       -c server_root
	      choose  a server root overriding the default SERVER_ROOT #define
	      in defines.h

	      The server root must hold your local copy of  the	 configuration
	      file

       -r chroot
	      instruct	Boa where to chdir and chroot to.  The chdir/chroot is
	      done before the configuration file is read, or any log files are
	      opened.

FILES
       boa.conf - the sole configuration file for Boa.
	      The  directives  in this file are defined in the DIRECTIVES sec‐
	      tion.

       mime.types - the
	      MimeTypes <filename> defines what Content-Type Boa will send  in
	      an HTTP/1.0 or better transaction.

DIRECTIVES
       The Boa configuration file is parsed with a lex/yacc or flex/bison gen‐
       erated parser.  If it reports an error, the line number	will  be  pro‐
       vided; it should be easy to spot.  The syntax of each of these rules is
       very simple, and they can occur in any order.   Where  possible,	 these
       directives mimic those of NCSA httpd 1.3; We saw no reason to introduce
       gratuitous differences.

       Note: 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.

       The following directives are contained in the boa.conf file, and	 most,
       but not all, are required.

       Port <integer>
	      This  is	the  port that Boa runs on.  The default port for http
	      servers is 80.  If it is less than  1024,	 the  server  must  be
	      started as root.

       User <user name or UID>
	      The  name	 or  UID the server should run as.  For Boa to attempt
	      this, the server must be started as root.

       Group <group name or GID>
	      The group name or GID the server should  run  as.	  For  Boa  to
	      attempt this, the server must be started as root.

       ServerAdmin <email address>
	      The  email  address where server problems should be sent.	 Note:
	      this is not currently used.

       PidFile <filename>
	      Where to put the pid of the process.  Comment out	 to  write  no
	      pid  file.   Note:  Because Boa drops privileges at startup, and
	      the pid file is written by the UID/GID before doing so, Boa does
	      not attempt removal of the pid file.

       ErrorLog <filename>
	      The location of the error log file.  If this does not start with
	      /, it is	considered  relative  to  the  server  root.   Set  to
	      /dev/null if you don't want errors logged.

       AccessLog <filename>
	      The  location  of	 the  access log file.	If this does not start
	      with /, it is considered relative to the server  root.   Comment
	      out  or set to /dev/null (less effective) to disable access log‐
	      ging.

       VerboseCGILogs
	      This is a logical switch and does not take any parameters.  Com‐
	      ment out to disable.

       CGILog <filename>
	      The  location of the CGI error log file.	If this does not start
	      with /, it is considered relative to the server root. If	speci‐
	      fied,  this  is  the  file  that	the stderr of CGIs is tied to,
	      *instead* of to the ErrorLog.

       CGIumask <umask>
	      The CGIumask is set immediately before  execution	 of  the  CGI.
	      The default value is 027. The number must be interpretable unam‐
	      biguously by the C function strtol. No base is specified, so one
	      may  use	a  hexadecimal, decimal, or octal number if it is pre‐
	      fixed accordingly.

       ServerName <server_name>
	      The name of this server that should be sent back to  clients  if
	      different than that returned by gethostname.

       VirtualHost
	      This is a logical switch and does not take any parameters.  Com‐
	      ment out to disable.  Given DocumentRoot /var/www,  requests  on
	      interface	 'A'  or  IP  'IP-A'  become  /var/www/IP-A.  Example:
	      http://localhost/ becomes /var/www/127.0.0.1

       VHostRoot <directory>
	      The root location for all virtually hosted data Comment  out  to
	      disable.	 Incompatible  with 'Virtualhost' and 'DocumentRoot'!!
	      Given VHostRoot /var/www, requests to  host  foo.bar.com,	 where
	      foo.bar.com  is  ip a.b.c.d, become /var/www/a.b.c.d/foo.bar.com
	      Hostnames are "cleaned", and must conform to the rules specified
	      in rfc1034, which are be summarized here:

	      Hostnames	 must start with a letter, end with a letter or digit,
	      and have	as  interior  characters  only	letters,  digits,  and
	      hyphen.  Hostnames must not exceed 63 characters in length.

       DefaultVHost <hostname>
	      Define  this in order to have a default hostname when the client
	      does not specify one, if using VirtualHostName.  If  not	speci‐
	      fied,  the  word	"default"  will be used for compatibility with
	      older clients.

       DocumentRoot <directory>
	      The root directory of the HTML documents. If this does not start
	      with /, it is considered relative to the server root.

       UserDir <directory>
	      The  name	 of the directory which is appended onto a user's home
	      directory if a ~user request is received.

       DirectoryIndex <filename>
	      Name of the file to use as a pre-written HTML  directory	index.
	      Please  make and use these files.	 On the fly creation of direc‐
	      tory indexes can be slow.

       DirectoryMaker <directory>
	      Name of the program used to generate on-the-fly directory	 list‐
	      ings.   The program must take one or two command-line arguments,
	      the first being the directory to index (absolute), and the  sec‐
	      ond, which is optional, contains what Boa would have the "title"
	      of the document be.  Comment out if you don't want  on  the  fly
	      directory	 listings.   If this does not start with /, it is con‐
	      sidered relative to the server root.

       KeepAliveMax <integer>
	      Number of KeepAlive requests to allow per	 connection.   Comment
	      out, or set to 0 to disable keepalive processing.

       KeepAliveTimeout <integer>
	      Number of seconds to wait before keepalive connections time out.

       MimeTypes <file>
	      The  location  of	 the  mime.types file.	If this does not start
	      with /, it is considered relative to the	server	root.  Set  to
	      /dev/null if you do not want to load a mime types file. Do *not*
	      comment out (better use AddType!)

       DefaultType <mime type>
	      MIME type used if the file extension is unknown, or there is  no
	      file extension.

       AddType <mime type> <extension> [extension...]
	      Associates a MIME type with an extension or extensions.

       Redirect, Alias, and ScriptAlias <path1> <path2>
	      Redirect,	 Alias, and ScriptAlias all have the same semantics --
	      they match the beginning	of  a  request	and  take  appropriate
	      action.	Use  Redirect  for  other  servers, Alias for the same
	      server, and ScriptAlias to enable directories for script	execu‐
	      tion.

	      Redirect	allows	you to tell clients about documents which used
	      to exist in your server's namespace, but do not  anymore.	  This
	      allows you tell the clients where to look for the relocated doc‐
	      ument.

	      Alias aliases one path to another.  Of course, symbolic links in
	      the file system work fine too.

	      ScriptAlias  maps	 a  virtual  path  to  a directory for serving
	      scripts.

       Please see the included boa.conf for defaults and examples.

HISTORY
       Like the Linux kernel, even numbered versions  are  "stable",  and  odd
       numbered	 versions  are "unstable", or rather, "development".  Versions
       0.91  and  0.91beta   of	  Boa	were   released	  by   Paul   Phillips
       <paulp@go2net.com>

       Version 0.92 was released by Larry Doolittle on December 12, 1996.

       Version 0.93 was the development version of 0.94.

       Version 0.94 was released 22 Jan 2000.

BUGS
       There are probably bugs, but we are not aware of any at this time.

AUTHOR
       Boa  was	 created by Paul Phillips <paulp@go2net.com>.  It is now being
       maintained and enhanced by Larry Doolittle <ldoolitt@boa.org>  and  Jon
       Nelson <jnelson@boa.org>.

       Linux  is  the development platform at the moment, other OS's are known
       to work. If you'd like to contribute to this effort, contact  Larry  or
       Jon via e-mail.

LICENSE
       This  program  is  distributed under the GNU General Public License, as
       noted in each source file.

Version 0.94			  Jan 22 2000				BOA(8)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net