我们常需要搭建HTTP服务,但是又不想搞那些复杂的Apache、IIS服务器等,这时我们就可以用Python帮我们搭建服务器。 例如之前讲过的用python建XMLRPC开服务进行server/client通信,但这里还有个问题,如果我需要显示本地文件(比如图片),但是rpc不可以直接访问本地文件怎么办?
这种情况下,只需要再开一个简单服务,显示指定文件夹下文件,再用那个rpc服务调这个服务的文件地址 即可。
下面是一个搭建HTTP服务显示本地文件的例子:
import sys
import BaseHTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler
HandlerClass = SimpleHTTPRequestHandler
ServerClass = BaseHTTPServer.HTTPServer
Protocol = "HTTP/1.0"
port = 8024
import socket
hostname = socket.gethostbyname(socket.gethostname())
server_address = (hostname, port)
HandlerClass.protocol_version = Protocol
httpd = ServerClass(server_address, HandlerClass)
sa = httpd.socket.getsockname()
print "Serving HTTP on", sa[0], "port", sa[1], "..."
httpd.serve_forever()
访问该程序打印出来的地址即可访问本地文件了:
CentOS上源码安装Python3.4
《Python核心编程 第二版》.(Wesley J. Chun ).[高清PDF中文版]
《Python开发技术详解》.( 周伟,宗杰).[高清PDF扫描版+随书视频+代码]
在Ubuntu下用Python搭建桌面算法交易研究环境