[NANOWEB DOCUMENTATION]

NANOWEB, the aEGiS PHP web server

nanoweb Modules

The configuration files of nanoweb reside in /etc/nanoweb/; there you'll find modules.conf containing lots of LoadModule directives registering extension modules to the server core. If you want to have another overview of supported features, have a look at the page with all available configuration directives.

core modules
following modules are essential parts of nanoweb and thus must always be loaded:
mod_static core This module makes standard files from the docroot accessible to nanoweb through the internal "parser" interface.
mod_fb core FileBrowser. Without this module you wouldn't get those fancy directory listings, which is probably the most heavily used nanoweb extension.
mod_pfilters core Filters are an extension to the internal "parser" representation of all files and content served by nanoweb. If this module isn't loaded, you probably run into trouble with some other extensions.
mod_ac core The Access Control module allows to restrict access to the webserver to only some hosts, or to deny access only for some of them.

standard modules
mod_cgi standard CGI Parsing Module. You can register any script language interpreter (PHP, Perl, Python, AWK, Ruby, Shell, JavaScript, ...) with the ParseExt directive to let the according files be processed by this module.
mod_include standard Server Side Includes support (therefore formerly called mod_ssi)
mod_gzip standard GZIP Content Encoding support
This module tries to compress all your files on the fly with the gzip encoding, which is understood by all recent browsers.
mod_status standard online server status reports
mod_load_limit standard Stops nanoweb from serving pages if the load average gets too high.
mod_mispell standard Mispelled URL correction support allows to select the correct file if a user request had some typos. A redirect or a notice can be send back.
mod_auth_simple standard authentication with user names and passwords given in one of the configuration files (.nwaccess files most probably)
mod_auth_htpasswd optional enables to use the authentication files from the apache webserver
mod_auth_nwauth optional Nanoweb authentication files look pretty much like the apache-style password-login files.
mod_auth_mysql optional This authentication module allows you to use an already existing database with a table of user/password pairs to restrict access to directories/areas of your webserver.
mod_auth_pgsql optional likewise for PostgreSQL
mod_auth_ldap optional Authentication information (login names and passwords) can also be accessed via LDAP using this module.
mod_auth_anydb optional This authentication module allows to use nearly any database, because it can utilize itself one of the database abstraction interfaces PEAR::DB, ADOdb or PHP dbx.
mod_auth_anonymous optional Allows ftp-like "anonymous login" authentication (a user must only submit its email address).
mod_proxy optional Proxy Server inside nanoweb.
The Proxy server implemented by this module is primarily a caching one (but introduces many filtering mechanisms as well), which means that it can speed up http requests if all computers of your local network are configured to request pages through nanoweb/mod_proxy.
mod_dosevasive optional Prevents your server from going down due to attacks following the »Denial of Service« routine.
mod_multiviews optional MultiViews enables nanoweb to perform transparent content negotiation with or without support from the requesting browser.
mod_meta optional Reads .html files and makes the content of <META HTTP-EQUIV> tags available as usual http response headers (for use by other extension modules as well).
mod_fcgi optional FastCGI support.
mod_mysqllog optional Log is written into a MySQL database.
mod_stdlog optional Writes log to stdout (console).
mod_rewrite optional RewriteEngine (powerful URI to filename mapping) allows you to introduce a very flexible virtual directory layer.

various other goodies
mod_method_PUT add-on Adds support for the "PUT" request method, which is used by some clients to upload files (something like FTP over HTTP).
mod_method_TRACE add-on Enables Nanoweb to reply to requests with the HTTP "TRACE" request method, which can be used to echo the incoming HTTP request.
mod_method_handler add-on Allows to use CGI's to extend nanoweb with non-standard (user defined, experimental or other extension protocol) http request methods.
mod_access_rbl add-on RBL checks (see mail-abuse.org/rbl)
mod_emailprotect add-on Encodes <A HREF="mailto:..."> to hide email addresses from spambots. It does so by requiring to POST submit a <FORM> before a mail address gets clearly readable.
mod_access_referer add-on Deny linking from external sites
mod_bsp add-on Brainfuck Server Pages
mod_asis add-on Support for apache-style .asis files, which carry http headers before the actual content.
mod_lnk optional This module allows to use .lnk files to reference to another filesystem location or remote proto:// source. Additonally enables Win32 visual shortcut files to be used like symlinks.
mod_digest add-on Computes the MD5 checksum of transmitted static content if the ContentMD5 directive activates it.
mod_throttle add-on Allows to limit the download transfer speed to a fixed amount for all requests to the specified server, vhost or directory.
mod_libphp (useless) add-on guessworking internal-PHP-execution module
mod_worms add-on Module that warns you about attacks targeting to scripting bugs regularily found in IIS (no problem with nanoweb usually),
but please refer to the README on mod_worms.
mod_fb2 add-on Alternative filebrowser module (lists directory contents, when no "index.html" is there). This one is more icon centric than the recommended mod_fb.
mod_msff add-on Microsoft®-Free Fridays is a campaign against IE's »Smart-Tags®«.
mod_unzip add-on Allows serving files from inside ZIP archives (while still allowing the .zip to get downloaded as usual).
mod_gunzip separate Decompresses gzip encoded files on the fly if a client without support for transfer encodings requests such a pre-compressed file. This module so does the opposite of mod_gzip. It is believed that this method is faster than using mod_gzip because most browsers support gzip nowadays, and even if one didn't, decompression is much faster than compression.
mod_mysql_scheme separate This PHP extension module introduces a mysql:// access fopen handler. It is intended to be used with mod_lnk to allow access to "files" contained in a column of a MySQL database table.
mod_mp3 separate Makes your mp3 collection available through a www interface.



NANOWEB, the aEGiS PHP web server