Apache and IIS webservers alternatives
These are only open source Apache alternatives and there are many commercial one's also.
Security, speed, compliance, and flexibility--all of these describe LightTPD which is rapidly redefining efficiency of a webserver; as it is designed and optimized for high performance environments. With a small memory footprint compared to other web-servers, effective management of the cpu-load, and advanced feature set (FastCGI, CGI, Auth, Output-Compression, URL-Rewriting and many more) LightTPD is the perfect solution for every server that is suffering load problems. And best of all it's Open Source licensed under the revised BSD license.
Project Home page :- http://www.lighttpd.net/
thttpd - tiny/turbo/throttling HTTP server
thttpd is a simple, small, portable, fast, and secure HTTP server.
Project Home page :- http://www.acme.com/software/thttpd/
Nginx [engine x] is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/POP3 proxy server. It has been running on many heavily loaded Russian sites for more than two years.
Project Home page :- http://nginx.net/
Mathopd is a very small, yet very fast HTTP server for UN*X systems.
Mathopd supports useful features of HTTP/1.1, such as persistent connections, partial responses and pipelining. It does not support things like content negotation. The latest version of the software (1.5) also supports CGI/1.1.
Mathopd was designed specifically to run as a single process, and to never grow in size. When this software was first written (early 1996) this is something that other HTTP servers were not very good at.
Project Home page :- http://www.mathopd.org/
Boa is a single-tasking HTTP server. That means that unlike traditional web servers, it does not fork for each incoming connection, nor does it fork many copies of itself to handle multiple connections.
Project Home page :- http://www.boa.org/
Jigsaw is W3C's leading-edge Web server platform, providing a sample HTTP 1.1 implementation and a variety of other features on top of an advanced architecture implemented in Java
Project Home page :- http://www.w3.org/Jigsaw/
The CERN httpd (also known as W3C httpd) is a generic public domain full-featured hypertext server which can be used as a regular HTTP server. The server is typically running on port 80 to serve hypertext and other documents but it can also serve as a proxy -- a server on a firewall machine -- that provides access for people inside a firewall to the outside world. When running as proxy httpd may be configured to do caching of documents resulting in faster response times.
Project Home page :- http://www.w3.org/Daemon/Status.html
NCSA HTTPd is an HTTP/1.0 compatible server for making hypertext and other documents available to Web browsers
Project Home page :- http://hoohoo.ncsa.uiuc.edu/
WEBrick is a Ruby library program to build HTTP servers.
Project Home page :- http://www.webrick.org/
CL-HTTP is a full-featured server for the Internet Hypertext Transfer Protocol (HTTP 1.1, HTML 2.0, 3.2 & 4.0.1) that comes complete with source code. The server has been proven in major production systems, applied in a number of Artificial Intelligence systems, and used in top research laboratories around the world
Project Home page :- http://www.cl-http.org:8001/cl-http/
Cherokee is a very fast, flexible and easy to configure Web Server. It supports the widespread technologies nowadays: FastCGI, SCGI, PHP, CGI, TLS and SSL encrypted connections, Virtual hosts, Authentication, on the fly encoding, Apache compatible log files, and much more.
Project Home page :- http://www.0x50.org/
Yaws is a HTTP high perfomance 1.1 webserver particularly well suited for dynamic-content webapplications. Two separate modes of operations are supported.
Standalone mode where Yaws runs as a regular webserver daemon. This is the default mode.
Embedded mode where Yaws runs as an embedded webserver in another erlang application.
Yaws is entirely written in Erlang furthermore it is a multithreaded webserver where one Erlang light weight process is used to handle each client.
Project Home page :- http://yaws.hyber.org/
Java Webserver is a Linux/Unix server written in Java. It should be able to be fast and easy to modify and document. It should also be fully modular with components ranging from HTML viewing to CGI running.
Project Home page :- http://webservjava.sourceforge.net/
A web server written for my fourth year project at university. It is written in C and uses glib 1.2 and libxml2.It is in an alpha stage currently and may undergo major change before it can be regarded as stable enough for other people to write modules for it.
Project Home page :- http://greatred.pengus.net/program
Japach is simple Web server, providing simple support for CGI scripts, virtual hosts, and static pages serving. It could be useful for sites for which Apache is an unnecessarily "big hammer", and is really easy to configure.
Project Home page :- http://www.jikos.cz/jikos/japach/
Tornado HTTP Server
Tornado HTTP Server is a multi-threaded Web server written in Java. It aims to be secure, efficient, and portable, and provide a full implementation of HTTP 1.1.
Project Home page :- http://tornado.sourceforge.net/
Reattore HTTP Server
Reattore is an HTTP server that uses the NIO features added in Java 1.4 to make a good performance, single threaded server. Designed for static content, it has similar performance to Boa under reasonable load.
Project Home page :- http://reattore.sourceforge.net/
mini_httpd is a small HTTP server. Its performance is not great, but for low or medium traffic sites it's quite adequate. It implements all the basic features of an HTTP server and can be configured to do SSL/HTTPS.
Project Home page :- http://www.acme.com/software/mini_httpd/
Jetty is an Open Source HTTP Servlet Server written in Java. It is a full featured HTTP/1.1 server and a Servlet container. It is designed to be small, fast, embeddable and extensible. It supports HTTP/1.1, servlets 2.3, and JSP 1.2.
Project Home page :- http://jetty.mortbay.org/
micro_httpd is a very small Unix-based HTTP server. It runs from inetd, which means its performance is poor, but for low-traffic sites, it's quite adequate. It implements all the basic features of an HTTP server in only 150 lines of code.
Project Home page :- http://www.acme.com/software/micro_httpd/
shttpd is very small, simple, and perhaps even fast HTTP server. Is intended mainly for personal use and can handle only static pages. It supports a reasonable subset of HTTP/1.0 and HTTP/1.1 with no virtual servers, conditional GET, or persistent connections.
Project Home page :- http://www.srnet.cz/~stepan/en/sw/shttpd.shtml
Shinyhttpd is a fast, tiny, and minimalist HTTP server daemon written in C. It supports minimal elements of HTTP/1.0.
Project Home page :- http://www.cubicsky.com/software.html
Dwarf HTTP Server
Dwarf HTTP Server is a full-featured Web server with a Java Servlet API 2.2 implementation and JSP support. Since it is based on the Dwarf framework, it shares its common design principles: powerful security architecture, modularity and extensibility, XML-based configuration, uniform logging, and remote management.
Project Home page :- http://www.gnome.sk
Bauk is a high-performance HTTP server for Unix-like operating systems. It brings together a rich set of features with real configurability and ease of administration. It includes advanced features such as full HTTP/1.1 and CGI/1.1 standard compliance, virtual hosts, virtual host aliases, URL path, HTTP authentication, content negotiation, configurable HTTP headers, execution of CGI programs/scripts, directory browsing, resource usage quotas, access restriction, configurable HTTP log format and location, single and multi-process architecture, and many other features.
Project Home page :- http://solair.eunet.yu/~kliker/bauk/
Dublet's HTTP Daemon
Dublet's HTTP Daemon is a fully functional Web server, aiming to defeat Apache in speed and security and match it in functionality.
Project Home page :- http://sf.net/projects/dhttpd/
Abyss Web Server
ABYSS aims to be a fully HTTP/1.1 compliant Web server. Its main design goals are speed, low resource usage, and portability. ABYSS works on most UNIX based systems and on Win32 systems (Win95/98/2000/NT/XP).
Project Home page :- http://www.aprelium.com/
xs-httpd is a small, fast, non-forking HTTP server that supports User-CGI, SSL (HTTPS), IPv6, and automatic decompression.
Project Home page :- http://www.stack.nl/xs-httpd/
DNHTTPD is a lightweight and high performance HTTP server implemented in Perl. It supports the use of virtual hosts and runs CGI scripts. It's extremely simple to set up and configure, and performs well under heavy load.
Project Home page :- http://dnhttpd.sourceforge.net/
Nanoweb is a modular Web server written in PHP. It is designed to be small, secure, and extensible. It is HTTP/1.1 compliant and has decent performance, CGI and FastCGI support, a nice configuration system, name-based virtual hosts, server side includes, authentication, gzip content encoding support, Apache combined format and MySQL logging, and many advanced features.
Project Home page :- http://nanoweb.si.kz/
Soma is an HTTP/1.1-compatible Web server written in Java. It is powerful (capable of handling many thousands of requests simultaneously), configurable, secure, and intelligent. It can run CGI programs, and has good support for Unix systems.
Project Home page :- http://soma-server.sf.net
OOWeb is a lightweight, embedded HTTP server for Java applications that maps objects to URL directories, methods to pages, and form/query-string arguments as method parameters. This allows for unparalleled ease in creating, deploying, and testing Web applications.
Project Home page :- http://ooweb.sourceforge.net/
PWebS is an HTTP server written in Python. It is intended to be used for testing, but it implements a multi-threaded architecture, CGI/1.1 with GET and POST methods, supports PHP through the CGI interface, and directory listing. It also features a caching system, which stores all pages (static or dynamically generated) in memory to improve the speed of the server and reduce the overall load. Requests and server errors are logged, and the server can drop root privileges to run as a specific user.
Project Home page :- http://pwebs.sf.net
neepHttpd is a small, simple, and efficient HTTP server for basic usage. It supports CGI through GET, but more methods are coming up soon. It uses very little memory, and has been tested successfully under high-bandwidth circumstances.
Project Home page :- http://www.neep.net/nhttpd/
Leah HTTP Daemon
Leah HTTP Daemon is a Web server strives to do everything a Web host would want efficiently and quickly. It aims for fast data transfer, high throughput, low overhead, support for running on as many architectures and platforms as possible (within reason), and support for new technologies and standards. It supports SSL/TLS, CGI, POST/GET, transfer resuming/cache features, templated directory listings and error pages, IPv6 support, multiple languages, VHost-specific settings, and more.
Project Home page :- http://leahhttpd.sourceforge.net/
shttpdj is a small, experimental HTTP server. Its architecture is modular and flexible. It is especially suitable for embedding into bigger projects.
Project Home page :- http://www.srnet.cz/~stepan/en/sw/shttpdj.shtml
fhttpd is an FTP/HTTP server with modules support. Modules run as separate "looping" processes locally or remotely, and can be configured to run under separate userids. Locally running modules can be configured to use fd passing of client's connection to avoid overhead in sending the response. ~username URL to directory remapping is supported in HTTP, and can be configured to access files, run scripts and modules under mapped user's userid.
Project Home page :- http://www.fhttpd.org/
Webfs (a.k.a. webfsd) is a simple HTTP server for purely static content. You can use it to serve the content of an FTP server via HTTP, for example. It can also be used to quickly export some files by starting an httpd server in a few seconds, without editing config files first. It knows how to use sendfile() on linux and FreeBSD. There is also sendfile emulation code which uses read()+write() and a userland bounce buffer; this allows one to compile and use webfs on systems without sendfile(). The stripped binary is less then 32Kb, making it great for floppy distros, recycled hardware, embedded systems (cramfs/romfs/flash disk) and other resource-limited environments.
Project Home page :- http://bytesex.org/webfs.html
Hydra is a high performance multi-threaded HTTP server. Unlike traditional multi-threaded Web servers, it uses a constant, configurable pool of threads, and each thread can handle several connections by multiplexing the connections. This is even better than non-blocking servers, since Hydra will use every available CPU in a multi-CPU system. It also has features such as host-based virtual hosting, HTTP 1.1 features, CGI 1.1, SSL 3.0, TLS 1.0, and more. Hydra was based on the Boa Web server.
Project Home page :- http://hydra.hellug.gr/
darkhttpd is a secure, lightweight, fast, single-threaded HTTP/1.1 server for static content.
Project Home page :- http://dmr.ath.cx/net/darkhttpd/
XWeb HTTP Server
XWeb is a simple Web server which supports CGI scripts written in Perl and C.
Project Home page :- http://in.geocities.com/shamit_bagchi/xweb.html
Phttpd is a free world wide web server. It uses techniques like multithreading, memory mapped files, dynamic linking to achive quick response times, extensibility, and high transfer rates without consuming huge system resources.
Project Home page :- http://www.lysator.liu.se/~pen/phttpd/
Athana is a small, simple standalone Web server written completely in Python (based on Medusa). It has support for HTTP multipart requests (file uploading), session handling, and TAL page templates.
Project Home page :- http://www.athana.org/
Monkey HTTP Daemon
Monkey HTTP Daemon is a small, powerful, and fast Web server for Linux written in C. Its features include language support, GET, POST, and HEAD methods, CGI, PHP4 as CGI, a config file (optional for every user), a mime.types file, virtual hosts, the ability to deny URLs and IPs, to run as a different user (such as nobody), serve users home directories, resume, and more.
Project Home page :- http://monkeyd.sourceforge.net
Kritton is an HTTP daemon for UNIX boxes. It is quite efficient and supports most of the HTTP protocol. Although it is not bloated, it does include some useful features, such as CGI. It does not abuse system resources. However, Kritton is still in its infancy.
Project Home page :- http://kritton.sourceforge.net/
gatling is a high-performance HTTP and FTP server. It is small, fast, and scalable, and uses platform-specific performance and scalability APIs. It supports connection keep-alive, el-cheapo virtual domains (similar to thttpd), IPv6, and Content-Range (not the full specs, just a-b or a-byte ranges).
Project Home page :- http://www.fefe.de/gatling/
zawhttpd is a mini Web server that features HTTP/1.0 and 1.1 support, keep-alive persistent connections, IPv6 support, GET and HEAD requests, chunked encoding and content-range, directory listing, basic authentication, access logging, daemon mode, and more. Almost all options must be configured at compile time, as there is no runtime configuration file.
Project Home page :- http://www.norz.org/zawhttpd.html
muhttpd (mu HTTP deamon) is a simple but complete Web server written in portable ANSI C. It supports static pages, CGI scripts, and MIME type based handlers. It drops privileges before accepting any connections, and can log received requests. It has been tested on OpenBSD, GNU/Linux, NetBSD, FreeBSD, Mac OS X, and Cygwin. It runs successfully on 32-bits, 64-bit, little endian, and big endian systems.
Project Home page :- http://inglorion.net/software/muhttpd/