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.
Webtester is an application which is intended to be used in the testing and validation of Web-based applications. By reading an XML configuration file, the application is able to call URLs and use regular expressions to examine the results. Features include support for SSL, cookies, and variable assignment/substitution when sending and examining data.
QtWebApp allows you to write standalone Web server applications in C++ as easily as Java Servlets. The HTTP 1.1 server supports persistent connections, sessions with cookies, and file uploads. It contains a template engine and a logger that can be configured at runtime. The application runs on Unix as a daemon, on Windows as a service, and on all operating systems on the command line. It is based on Nokia QT 4.7. Compatibility with QT 4.8 and 5.0 has been verified successfully.
NXWEB is ultra-fast and super-lightweight web server for applications written in C. It can serve thousands of concurrent requests with a small memory footprint using an event-driven and multi-threaded model that is designed to scale. It features an exceptionally light code base, a simple API, decent HTTP protocol handling, keep-alive connections, SSL support (via GNUTLS), HTTP proxy (with keep-alive connection pooling), non-blocking sendfile support (with configurable small file memory cache), cacheable gzip content encoding, cacheable image thumbnails with watermarks (via ImageMagick), a modular design for developers, and the ability to run as a daemon.
Tntnet is a Web application server for generating Web applications in C++. HTML pages with some additional tags for inclusion of C++ code are compiled into shared libraries and served from tntnet. It resembles PHP, JSP, or Mason, but the programming language used is C++, and the pages are compiled into native code before serving. Tntnet is fully multithreaded and supports HTTP keep-alive for best performance. Its dynamic pages are faster than static pages with other Web servers, while creating Web applications is simple.
CPPSERV is a Web application server / servlet container that provides a Servlet-like API to C++. It also contains CSP (C++ Server Pages) functionality, similar to pre-compiled JSP. It consists of stand-alone application server and Web server front-ends. Modules for Apache and lighttpd are available.
ulxmlrpcpp is a library to perform calls via XML-RPC in an object oriented approach. It is possible to create both client and server applications in multithreaded environments. Unlike other implementations, it does not insist on HTTP for transportation, but might also accept other ways (e.g. a simple serial line with a user-defined protocol). For HTTP as a transportation protocol, the following features are supported: cookies, SSL/TLS, proxy, SSL/TLS over a proxy, and chunked transfers. ulxmlrpcpp is also able to transmit data faster with binary XML.
Restlet is a REST framework for Java. It supports all REST concepts (Resource, Representation, Connector, Component, etc.) and is suitable for both client and server Web applications. It supports major Web standards like HTTP, SMTP, XML, JSON, WADL, and Atom. Many extensions are also available to integrate with Servlet, Spring, Jetty, Grizzly, Simple, JAXB, JAX-RS, JiBX, Velocity, or FreeMarker. A GWT version is also available.