GNU libmicrohttpd is a small C library for embedding HTTP server functionality into other applications. It is reentrant, fast, supports HTTP 1.1, and permits listening on multiple ports. The API is simple and still powerful enough to allow programmers to use the entire HTTP feature set. SSL/TLS support is available as an option.
| Tags | Internet Web HTTP Servers Software Development Libraries |
|---|---|
| Licenses | GPL LGPL |
| Operating Systems | Linux Windows Windows Windows z/OS vxWorks |
| Implementation | C |
Recent releases


Changes: This release fixes two minor issues with respect to the request-completed notification and a performance issue where read buffer sizes for uploads could, under certain circumstances, be too small for reasonable performance. A call "MHD_get_version" was added to the API.


Changes: This release adds support for thread pools and fixes a few minor issues, including one on 64-bit platforms with unknown upload/download sizes (introducing a new constant, MHD_SIZE_UNKNOWN).


Changes: This release fixes a few issues with the build system fixing compile errors on certain platforms (Win32, OS X, and arm-linux-uclibc).


Changes: This release adds (optional) support for SSL/TLS. Other new features include URL logging and 64-bit upload/download support for all architectures. Various minor bugs have also been resolved.


Changes: This release adds un-escaping of URIs, improves performance by unsetting TCP_CORK at the end of transmissions, allows users access to the unparsed URI for logging, and removes unused code in the SSL/TLS subsystem. A tutorial was added to the documentation.