1.2 Faire un serveur web en une ligne

De UnixWiki
Aller à la navigation Aller à la recherche
La version imprimable n’est plus prise en charge et peut comporter des erreurs de génération. Veuillez mettre à jour les signets de votre navigateur et utiliser à la place la fonction d’impression par défaut de celui-ci.
 python -c 'import SimpleHTTPServer;SimpleHTTPServer.test()'

ou plus simple

 python -m SimpleHTTPServer

Il sera chrooté dans le répertoire courant.

Une version multithreads

 #!/usr/bin/env python
 # -*- coding: utf-8 -*-
 import SocketServer
 import BaseHTTPServer
 import sys, os
 import CGIHTTPServer
 port = 8000
 class ThreadingCGIServer(SocketServer.ThreadingMixIn, BaseHTTPServer.HTTPServer):
    pass
 server = ThreadingCGIServer((, port), CGIHTTPServer.CGIHTTPRequestHandler)
 print "Serveur demarre sur le port %s." % port
 try:
     while 1:
         sys.stdout.flush()
         server.handle_request()
 except KeyboardInterrupt:
     print "Fini !"