This is really portable, reasonably fast and easy-to-extend web server implementation in pure Perl. Because it's pure Perl and doesn't depend on any non-core libraries, it works back to perl 5.005 (with warnings::compat) it's best if you want to embed your application in the standalone HTTP server using this module.
An excellent, simple, and fast HTTP server. This module supports multiple server models via Net::Server, including pre-forking, Inetd, etc. There are hooks that allow easy customization of every aspect of the server's behavior, as well as a subclass that properly instantiates a standard CGI environment. I have been using HTTP::Server::Simple successfully to host persistent applications built with CGI::Application.
The documentation has been much improved and expanded in recent releases, so I recommend ignoring the older reviews that complain about such.
It would be nice if the server differentiated between a bad request (HTTP 400) and a valid request but with a bad method name (HTTP 501) but this is easily fixed by overloading the right methods.
It's just so... useful! When I need to futz around with web application testing, I can just use this distribution to set up a dinky little server without worrying about Apache or any other server that requires more than a moment's thought. See also Test::HTTP::Server::Simple.
As with Nadim Khemir's review I too found the documentation very hard to read, and the best code example was not in the distribution but actually the source for Leon Brocard's HTTP::Server::Simple::Kwiki module.
But the module also did exactly what I wanted it to do -- and I got the whole chunk of code working within an hour of installing the module, and that included a lot of time wasted on problems unrelated to HTTP::Server::Simple.