Pastebin

Paste #470: forking.py

< previous paste - next paste>

Pasted by tdn

Download View as text

#!/usr/bin/python                                                                                                                                                                    

"""Simple test CGI server"""

import sys
import CGIHTTPServer
import BaseHTTPServer
import SocketServer

class Handler(CGIHTTPServer.CGIHTTPRequestHandler):
    cgi_directories = ["/cgi-bin"]

class ThreadingServer(SocketServer.ThreadingMixIn, BaseHTTPServer.HTTPServer):
    pass

class ForkingServer(SocketServer.ForkingMixIn, BaseHTTPServer.HTTPServer):
    pass



# Listen address                                                                                                                                                                      
IP="127.0.0.1"
PORT = 8080

print "Serving at %s port %d" % (IP, PORT)

print "before attr override: have fork: %s" % Handler.have_fork
Handler.have_fork = False
print "after attr override: have fork: %s" % Handler.have_fork

#server = BaseHTTPServer.HTTPServer((IP, PORT), Handler)                                                                                                                              
#server.serve_forever()                                                                                                                                                              

#server = ThreadingServer((IP,PORT), Handler)                                                                                                                                        
server = ForkingServer((IP,PORT), Handler)


print "server attr: have fork: %s" % server.RequestHandlerClass.have_fork
try:
    while True:
        sys.stdout.flush()
        server.handle_request()
except KeyboardInterrupt:
    print "Server killed"

New Paste


Do not write anything in this field if you're a human.

Go to most recent paste.