'Fork a new subprocess to process the request.'

def process_request(self, request, client_address):

    self.collect_children()
    pid = os.fork()
    if pid:
        if (self.active_children is None):
            self.active_children = []
        self.active_children.append(pid)
        self.close_request(request)
        return
    else:
        try:
            self.finish_request(request, client_address)
            self.shutdown_request(request)
            os._exit(0)
        except:
            try:
                self.handle_error(request, client_address)
                self.shutdown_request(request)
            finally:
                os._exit(1)
        return
