#!/usr/bin/perl use HTTP::Daemon; use Parallel::ForkManager; $daemon = new HTTP::Daemon(LocalPort => 8080, LocalAddr => "127.0.0.1", Listen => 64, ReuseAddr => 1) or die "$!"; $pm = Parallel::ForkManager->new(3); while (1) { $inputcon = $daemon->accept(); $pm->start and next; do_client_stuff($inputcon); $pm->finish(); } sub do_client_stuff { my ($inputcon) = @_; $request = $inputcon->get_request; print $request . "\n"; $inputcon->send_error(403); }