Embedded Web Server
Go to file
tayS 6869b64b31 Fix for hang when sending large request with SSL enabled
When using SSL, we must use SSL_pending() in addition to/instead of select() to determine whether there is SSL data to be read.
This update makes the SSL_pending() function available and uses is to check for data if select() indicates there is no data.

See https://github.com/valenok/mongoose/issues/47
2012-12-21 12:38:34 -06:00
bindings Added MG_INIT_LUA event 2012-10-08 00:09:43 +01:00
examples Added mg_upload() 2012-12-07 01:50:47 +00:00
test Added test_skip_quoted() 2012-12-07 01:50:12 +00:00
win32 removed obsolete stuff 2010-09-12 22:08:44 +01:00
LICENSE license added 2010-09-06 22:04:28 +01:00
main.c Removed test cruft for MG_OPEN_FILE message from the event handler 2012-09-29 22:24:16 +01:00
Makefile Added Lua build instructions 2012-10-01 22:24:22 +01:00
mongoose.1 updated date on a manual page 2012-09-23 14:50:07 +01:00
mongoose.c Fix for hang when sending large request with SSL enabled 2012-12-21 12:38:34 -06:00
mongoose.h Made the names of the function arguments of the declaration and the definition of mg_get_var(..) the same. 2012-12-16 12:27:53 +01:00
README.md Changed overview 2012-09-24 09:04:28 +01:00

Overview

Mongoose is easy to use web server. It also can be used as embedded web server library to provide web interface to applications.

Mongoose executable does not 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.

Features

  • Crossplatform - works on Windows, MacOS and most flavors of UNIX
  • CGI, SSL, SSI, Digest (MD5) authorization, Websocket, WEbDAV support
  • Resumed download, URL rewrite support
  • IP-based ACL, Windows service, GET, POST, HEAD, PUT, DELETE methods
  • Excluding files from serving by URI pattern
  • Download speed limit based on client subnet or URI pattern
  • Small footprint: executable size is 40 kB on Linux 2.6 i386 system
  • Embeddable with simple and clean API (mongoose.h). The source is in single mongoose.c file to make things easy.
  • Embedding examples: hello.c, post.c, upload.c, websocket.c
  • Python and C# bindings

Mailing list

You can read it online, subscribe to, or send a message at mongoose-users.

Keep Sergey happy

I have a books wishlist on Amazon. If you feel brave, you can buy me a book!