Mongoose is easy to use web server. It also can be used as embedded web server
Project mission is to provide the community with simple and functional
library to provide web interface to applications. Mongoose executable does not
web server library and web server built on top of that library.
depend on any external library or configuration. If it is copied to any directory
and launched from there, it starts to serve that directory on port 8080 (so to access
files, go to http://localhost:8080). If some additional config is required - for
example, different listening port or IP-based access control, that can be done via
command line flags or configuration file, which should be created in the same
directory where mongoose itself lives. This makes Mongoose perfect for all sorts
of demos, quick tests, file sharing, and Web programming.
See [manual](https://github.com/valenok/mongoose/wiki/Manual) for more information.
Features
The target audience are application or device developers looking to implement
web interface for their applications or devices and web developers looking for
a simple development platform.
Overview
--------
--------
- Crossplatform - works on Windows, MacOS and most flavors of UNIX
To accomplish it's mission, Mongoose keeps balance on functionality and
simplicity by carefully selected list of features:
- Liberal [MIT license](http://en.wikipedia.org/wiki/MIT_License), which is great for commercial use
- Crossplatform - works on Windows, Mac and UNIX
- CGI, SSL, SSI, Digest (MD5) authorization, Websocket, WEbDAV support
- CGI, SSL, SSI, Digest (MD5) authorization, Websocket, WEbDAV support
- Lua server pages (like PHP, but using Lua as a language instead of PHP)
- Lua server pages support (PHP-like functionality using Lua), see [page.lp](https://github.com/valenok/mongoose/blob/master/test/page.lp)
- Resumed download, URL rewrite, IP-based ACL, Windows service
- Resumed download, URL rewrite, IP-based ACL, Windows service
- Excluding files from serving by URI pattern (file blacklist)
- Excluding files from serving by URI pattern (file blacklist)
- Download speed limit based on client subnet or URI pattern
- Download speed limit based on client subnet or URI pattern
- Small footprint: executable size is 50 kB on Linux 2.6 i386 system
- Small footprint: executable size is 50 kB on Linux 2.6 i386 system
- 130 kilobytes Windows executable with all of the above compiled in, and no dependencies
- 130 kilobytes Windows executable with all of the above and no dependencies
- Embeddable with simple and clean API ([mongoose.h](https://github.com/valenok/mongoose/blob/master/mongoose.h)). The source is in single [mongoose.c](https://github.com/valenok/mongoose/blob/master/mongoose.c) file to make things easy.
- Embeddable with simple and clean API ([mongoose.h](https://github.com/valenok/mongoose/blob/master/mongoose.h)). The source is in single [mongoose.c](https://github.com/valenok/mongoose/blob/master/mongoose.c) file to make things easy.