Skip to content
Embedded C/C++ web server
C C++ HTML Lua Perl Makefile Other
Pull request Compare This branch is 1122 commits behind civetweb:master.
Latest commit 30aa23f May 14, 2015 Thomas Davis Fixed using CGI iterpreters with spaces in the path.
Failed to load latest commit information.
Qt Add Qt build Apr 25, 2015
distribution/arch Compile fixes for OSX Jun 26, 2014
examples Clean usage of const/not const mg_context* and mg_connection* handles… Apr 29, 2015
include Symbols export for the C++ Interface Apr 29, 2015
resources Define LUA_USE_POSIX to use the more secure mkstemp, fix 'target was … Apr 10, 2015
src Fixed using CGI iterpreters with spaces in the path. May 14, 2015
.gitattributes Updated git attributes to deal with eol problems Oct 7, 2013
.travis.yml move travis tests to ci/ from test/ci_tests May 2, 2015 Update LICENCE and README Apr 26, 2015
Makefile Add -fPIC for static linked library. May 11, 2015
Makefile.deprecated Update Lua to 5.2.3 Jul 30, 2014

Civetweb Civetweb

There is a new home!!!

Bel has been taking the lead on Civetweb, so the official repository is being moved under his control for ease of maintenance.

Project Mission

Project mission is to provide easy to use, powerful, C/C++ embeddable web server with optional CGI, SSL and Lua support. Civetweb has a MIT license so you can innovate without restrictions.

Where to find the official version?

End users can download Civetweb at SourceForge

Developers can contribute to CivetWeb via GitHub

Trouble tickets should be filed on GitHub

Discussion/support group and announcements are at Google Groups

Quick start documentation


Civetweb keeps the balance between functionality and simplicity by a carefully selected list of features:

  • Liberal, commercial-friendly, permissive, MIT license
  • Free from copy-left licenses, like GPL, because you should innovate without restrictions.
  • Forked from Mongoose in 2013, before it changed the licence from MIT to commercial + GPL. A lot of enchancements have been added since that time, see
  • Works on Windows, Mac, Linux, UNIX, iPhone, Android, Buildroot, and many other platforms.
  • Scripting and database support (Lua scipts, Lua Server Pages, CGI + SQLite database). This provides a ready to go, powerful web development platform in a one single-click executable with no dependencies.
  • Support for CGI, HTTPS/SSL, SSI, HTTP digest (MD5) authorization, Websocket, WEbDAV.
  • Resumed download, URL rewrite, file blacklist, IP-based ACL, Windows service.
  • Download speed limit based on client subnet or URI pattern.
  • Simple and clean embedding API.
  • The source is in single file to make things easy.
  • Embedding examples included.
  • HTTP client capable of sending arbitrary HTTP/HTTPS requests.

Optionally included software

Lua Sqlite3 LuaFileSystem LuaSQLite3 LuaXML


This project is very easy to install and use. Please read the documentation and have a look at the examples. More information may be found on the mailing list.


Contributions are welcome provided all contributions carry the MIT license.

DO NOT APPLY fixes copied from Mongoose to this project to prevent GPL tainting.


Civetweb is based on the Mongoose project - the original Author was Sergey Lyubka. He still controls the original Mongoose project. However, he has changed or said he would change licenses after writing and distributing the original code this project is based on.

Using this project ensures the MIT licenses terms are applied and GPL cannot be imposed on any of this code as long as it is sourced from here. This code will remain free with the MIT license protection.

A list of authors can be found in

Something went wrong with that request. Please try again.