小型的嵌入式Web服务器-libmicrohttpd
2011-03-05 09:51:38 阿炯

本站赞助商链接,请多关照。

GNU libmicrohttpd 是一个小型的嵌入式 HTTP 服务器 的 C 类库,支持 HTTP 1.1 可以同时侦听多个端口。

GNU libmicrohttpd is a small C library that is supposed to make it easy to run an HTTP server as part of another application. GNU libmicrohttpd is free software and part of the GNU project.

Features
* C library: fast and small
* API is simple, expressive and fully reentrant
* Implementation is HTTP 1.1 compliant
* HTTP server can listen on multiple ports
* Four different threading models (select, poll, pthread, thread pool)
* Supported platforms include GNU/Linux, FreeBSD, OpenBSD, NetBSD, OS X, W32, Symbian and z/OS
* Support for IPv6
* Support for SHOUTcast
* Support for incremental processing of POST data (optional)
* Support for basic and digest authentication (optional)
* Support for SSL3 and TLS (requires libgcrypt and libgnutls, optional)
* Binary is only about 32k (without TLS/SSL support and other optional features)

libmicrohttpd was started because the author needed an easy way to add a concurrent HTTP server to other projects. Existing alternatives were either non-free, not reentrant, standalone, of terrible code quality or a combination thereof. Do not use libmicrohttpd if you are looking for a standalone HTTP server, there are many other projects out there that provide that kind of functionality already. However, if you want to be able to serve simple WWW pages from within your C or C++ application, check it out.

libmicrohttpd is licensed under the GNU LGPL. If you disable HTTPS/SSL support, you can also choose the second license, the eCos License. If you have questions about licensing, please contact the maintainer.

最新版本:0.9
该版本增加服务器初始化连接;避免使用 pthread 信号,提升了可移植性;支持在32位系统下传输超过2G的文件;修复了一些bug;更新了教程。

项目主页:http://www.gnu.org/software/libmicrohttpd/