mirror von https://github.com/civetweb/civetweb.git

Sergey Lyubka e63f7fe33a Always initializing struct file on stack 12 years ago
build f0a2924a7c Added config editor for Win32 12 years ago
examples 08afdfa8b6 better cleanup 12 years ago
test ec7d0b1abd Added test_mg_upload() 12 years ago
LICENSE abbf27338e license added 15 years ago
Makefile 2b87f909ce Makefile refactored 12 years ago
README.md 9d1e356709 changed README 12 years ago
UserManual.md e61e371c16 Changed user manual 12 years ago
main.c 81e21a3a0b Using get_url_to_first_open_port() in cocoa build 12 years ago
mongoose.c e63f7fe33a Always initializing struct file on stack 12 years ago
mongoose.h 5105717f78 Added printf checkers for mg_download 12 years ago

README.md

Project Mission

Project mission is to provide simple, functional, embeddable web server to make it easy for application and device developers to implement web interface for their application and devices, and to offer a simple web development environment.

Overview

To accomplish it's mission, Mongoose keeps balance on functionality and simplicity by carefully selected list of features:

  • Liberal, commercial-friendly MIT license
  • Works on Windows, Mac, UNIX, iPhone, Android, and many other platforms
  • Support for CGI, SSL, SSI, Digest (MD5) authorization, Websocket, WEbDAV
  • Lua server pages (PHP-like functionality using Lua), see page.lp
  • Resumed download, URL rewrite, IP-based ACL, Windows service
  • Excluding files from serving by URI pattern (file blacklist)
  • Download speed limit based on client subnet or URI pattern
  • Small footprint: executable size is 50 kB on Linux 2.6 i386 system
  • 130 kilobytes Windows executable with all of the above and no dependencies
  • Simple and clean embedding 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
  • HTTP client functionality for embedded usage, capable of sending arbitrary HTTP/HTTPS requests
  • Extensive documentation in form of User Manual

Questions can be asked at mongoose-users@google.com mailing list.

Keep Sergey happy

I am Sergey Lyubka, a software engineer from Galway, Ireland. I started working on Mongoose in 2004, and since then continuously improving it, investing thousands of hours of work. My other project I give to the community for free is Super Light Regular Expression library.

If you feel grateful for the stuff I've done, you can buy me a book from my Amazon wishlist. Many thanks to all who already did so: T.Barmann, D.Hughes, J.C.Sloan, R.Romeo, L.E.Spencer, S.Kotay, and 6 others. Appreciated guys, you keep my brains going!

Cash is also appreciated indeed. Press button to donate. Donation progress so far: Progress