README.md 3.95 KB
Newer Older
Sergey Lyubka's avatar
Sergey Lyubka committed
1
# <img src="http://cesanta.com/images/mongoose_logo.png" width="64" height="64"> Mongoose Web Server
2

Sergey Lyubka's avatar
Sergey Lyubka committed
3 4 5 6 7 8 9 10 11 12
Mongoose is the most easy to use web server on the planet. A web server of choice for Web developers (PHP, Ruby, Python, etc) and Web designers.

Mongoose is built on top of Libmongoose embedded library, which can turn
anything into a web server in 5 minutes worth of effort and few lines of code.
Libmongoose is used to serve Web GUI on embedded devices, implement RESTful
services, RPC frameworks (e.g. JSON-RPC), handle telemetry data exchange, and
perform many other tasks in various different industries including aerospace,
manufacturing, finance, research, automotive, gaming, IT.


Sergey Lyubka's avatar
Sergey Lyubka committed
13
   * [Mailing list](http://groups.google.com/group/mongoose-users)
Sergey Lyubka's avatar
Sergey Lyubka committed
14 15
   * [Downloads](http://cesanta.com/mongoose.shtml)
   * [Documentation](http://cesanta.com/docs.shtml)
Sergey Lyubka's avatar
Sergey Lyubka committed
16

Sergey Lyubka's avatar
Sergey Lyubka committed
17
# Features
Sergey Lyubka's avatar
Sergey Lyubka committed
18

Sergey Lyubka's avatar
Sergey Lyubka committed
19 20 21 22 23 24
- Works on Windows, Mac, UNIX/Linux, iPhone, Android eCos, QNX
and many other platforms
- CGI, SSI, SSL, Digest auth, Websocket, WEbDAV, Resumed download,
  URL rewrite, file blacklist
- Custom error pages, Virtual hosts, IP-based ACL, Windows service,
  HTTP/HTTPS client
25 26
- Simple and clean
  [embedding API](https://github.com/cesanta/mongoose/blob/master/mongoose.h).
Sergey Lyubka's avatar
Sergey Lyubka committed
27
  The source is in single
Sergey Lyubka's avatar
Sergey Lyubka committed
28
  [mongoose.c](https://github.com/cesanta/mongoose/blob/master/mongoose.c) file
Sergey Lyubka's avatar
Sergey Lyubka committed
29
  to make embedding easy
30
- Extremely lightweight, has a core of under 40kB and tiny runtime footprint
David Arnold's avatar
David Arnold committed
31
- Asynchronous, non-blocking core supporting single- or multi-threaded usage
Sergey Lyubka's avatar
Sergey Lyubka committed
32 33 34
- On the market since 2004 with over 1 million cumulative downloads
- Stable, mature and tested, has several man-years invested
  in continuous improvement and refinement
35

Sergey Lyubka's avatar
Sergey Lyubka committed
36 37 38 39 40 41 42 43 44 45
# Screenshots

Download, double-click to start, run browser -- that's all!

![shot1](http://cesanta.com/images/tut_sharing/tut1.png)
![shot2](http://cesanta.com/images/tut_sharing/tut2.png)

![shot3](http://cesanta.com/images/tut_sharing/tut3.png)
![shot4](http://cesanta.com/images/tut_sharing/tut4.png)

46 47
# Acknowledgements

Sergey Lyubka's avatar
Sergey Lyubka committed
48
Mongoose made better thanks to the contribution of following people:
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63

Arnout Vandecappelle, Benoît Amiaux, Boris Pek, Cody Hanson, Colin Leitner,
Daniel Oaks, Eric Bakan, Erik Oomen, Filipp Kovalev, Ger Hobbelt,
Hendrik Polczynski, Igor Okulist, Jay, Joe Mucchiello, John Safranek,
José Miguel Gonçalves, Shueng Chuan, Katerina Blinova, Konstantin Sorokin,
Marin Atanasov, Matt Healy, Mitch Hendrickson, Nigel Stewart, Pavel Khlebovich,
Sebastian Reinhard, Stefan Doehla, abadc0de, nullable.type,
T.Barmann, D.Hughes, J.C.Sloan, R.Romeo, L.E.Spencer, S.Kotay, R.M.Shorter,
W.Mar, J.Wilander, Santa from Memphis, S.Davies, C.Beck,
O.M.Vilhunen, C.Radik, G.Woodcock, M.Szczepkowski,
Eternal Lands Dev Team, T.Tollet, C.Tangerino, G.Karsai, A.Bourgett,
C.Blakemore, D.Fonaryov, T.Andrle, O.IJsselmuiden, R.Womack, M.Tomlinson,
A.Slåttå, L.Farrell, J.D.P.Ballestero, V.Albaev, B.Harker, T.Scheffel, H.Klein,
R.Merit, T.Bennett, H.Solis, A.Zincenko, M.S., S.Krul, K.Cooke, S.McCallum,
F.Morenius, and 10 others.
64

65
# Licensing
66

67 68 69 70 71 72 73 74 75
Mongoose is released under commercial and
[GNU GPL v.2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) open
source licenses. The GPLv2 open source License does not generally permit
incorporating this software into non-open source programs. 
For those customers who do not wish to comply with the GPLv2 open
source license requirements,
[Cesanta Software](http://cesanta.com) offers a full,
royalty-free commercial license and professional support
without any of the GPL restrictions.
Sergey Lyubka's avatar
Sergey Lyubka committed
76

77 78 79 80 81 82 83 84 85 86
# Other products by Cesanta Software: simple and effective

- [SSL Wrapper](https://github.com/cesanta/ssl_wrapper) - application to
  secure network communications
- [Frozen](https://github.com/cesanta/frozen) - JSON parser and generator
- [SLRE](https://github.com/cesanta/slre) - Super Light Regular Expression
  library
- [Net Skeleton](https://github.com/cesanta/net_skeleton) - framework for
  building network applications
- [SLDR](https://github.com/cesanta/sldr) - Super Light DNS Resolver