Updated user manual

This commit is contained in:
Sergey Lyubka 2013-01-04 21:01:13 +00:00
parent 0f9a6266e2
commit 2acfab62f0

View File

@ -2,15 +2,26 @@ Overview
-------- --------
Mongoose is small and easy to use web server. It is self-contained, and does Mongoose is small and easy to use web server. It is self-contained, and does
not require any external software to run. Mongoose can be configured via not require any external software to run.
command line options, or via configuration file, or it can be run with no
configuration at all, thanks to the reasonable defaults. If no command line
options are given, mongoose searches for a configuration file
called "mongoose.conf" in the same directory where mongoose binary is
located, and uses it if it is present.
On Windows, mongoose iconifies itself to the system tray icon when started.
Right-click on the icon pops up a menu, where it is possible to stop
mongoose, or configure it, or install it as Windows service.
On UNIX and Mac, mongoose is a command line utility. Running `mongoose` in
terminal, optionally followed by configuration parameters
(`mongoose [OPTIONS]`) or configuration file name
(`mongoose [config_file_name]`) starts the
web server. Mongoose does not detach from terminal. Pressing `Ctrl-C` keys
would stop the server.
When started, mongoose first searches for the configuration file.
If configuration file is specified explicitly in the command line, i.e.
`mongoose path_to_config_file`, then specified configuration file is used.
Otherwise, mongoose would search for file `mongoose.conf` in the same directory
where binary is located, and use it.
Configuration file is a sequence of lines, each line containing Configuration file is a sequence of lines, each line containing
command line option name and it's value. Empty lines, and lines beginning command line argument name and it's value. Empty lines, and lines beginning
with `#`, are ignored. Here is the example of `mongoose.conf` file: with `#`, are ignored. Here is the example of `mongoose.conf` file:
# mongoose.conf file # mongoose.conf file
@ -18,11 +29,27 @@ with `#`, are ignored. Here is the example of `mongoose.conf` file:
listening_ports 8080,8043s listening_ports 8080,8043s
ssl_certificate c:\mongoose\ssl_cert.pem ssl_certificate c:\mongoose\ssl_cert.pem
When configuration file is processed, mongoose process command line arguments,
if they are specified. Command line arguments therefore can override
configuration file settings. Command line arguments must start with `-`.
For example, if `mongoose.conf` has line
`document_root /var/www`, and mongoose has been started as
`mongoose -document_root /etc`, then `/etc` directory will be served as
document root, because command line options take priority over
configuration file.
Mongoose can also be used to modify `.htpasswd` passwords file:
mongoose -A <htpasswd_file> <realm> <user> <passwd>
Usage Examples Usage Examples
-------------- --------------
- How to share a Windows folder. Copy mongoose executable to a folder and
- How to share a Windows folder: copy mongoose executable to a folder and
double-click the executable. The folder should be accessible via double-click the executable. The folder should be accessible via
[http://localhost:8080](http://localhost:8080) in any browser. [http://localhost:8080](http://localhost:8080) in any browser.
- How to start mongoose at UNIX startup time in daemon mode, serving
directory `/var/www`: put this line in the system startup script,
`nohup /path/to/mongoose -listening_ports 80 -document_root /var/www`
Command Line Options Command Line Options
-------------------- --------------------