分类: Python/Ruby
支持多线程的webserver
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#!/usr/bin/python from SocketServer import ThreadingMixIn from BaseHTTPServer import HTTPServer,BaseHTTPRequestHandler class myHandler(BaseHTTPRequestHandler): #Handler for the GET requests def do_GET( self ): self .send_response( 200 ) self .send_header( ‘Content-type‘ , ‘text/html‘ ) self .send_header( ‘Uri‘ , self .path) self .end_headers() self .wfile.write( "hi multi threading test!\n" ) class ThreadingHttpServer(ThreadingMixIn, HTTPServer): pass PORT_NUM = 8080 serverAddress = ("", PORT_NUM) server = ThreadingHttpServer(serverAddress, myHandler) print ‘Started httpserver on port ‘ , PORT_NUM server.serve_forever() |
测试:
curl -v http://127.0.0.1:8080/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
[root@localhost ~]# curl -v http://127.0.0.1:8080/ * About to connect() to 127.0.0.1 port 8080 * Trying 127.0.0.1... connected * Connected to 127.0.0.1 (127.0.0.1) port 8080 > GET / HTTP/1.1 > User-Agent: curl/7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 > Host: 127.0.0.1:8080 > Accept: */* > < HTTP/1.0 200 OK < Server: BaseHTTP/0.3 Python/2.4.3 < Date: Sun, 24 Feb 2013 07:28:46 GMT < Content-type: text/html < Uri: / hi multi threading test! * Closing connection #0 |
python中一个简单的webserver,布布扣,bubuko.com
原文:http://www.cnblogs.com/L-H-R-X-hehe/p/3815922.html