绿色版“python -m SimpleHTTPServer”

pySimpleHTTPServer 是一个简单的 HTTP 服务程序,功能与在安装了 Python 环境的机器上执行“python -m SimpleHTTPServer”一样。

由于经常需要临时搭建一个 HTTP 服务用于测试,在安装了 Python 环境的机器上这很简单,但有时需要在一些只有最基本的系统的测试机上做测试(比如测试页面在 IE6/7 下的表现),因此,我将 Python 的这个方便的功能做成了一个绿色 .exe 文件。

源码很简单:

# -*- coding: utf-8 -*-

u"""******************************************************
pySimpleHTTPServer

@about: https://oldj.net/article/py-simple-http-server/
******************************************************
"""

import sys
import BaseHTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler
HandlerClass = SimpleHTTPRequestHandler
ServerClass  = BaseHTTPServer.HTTPServer
Protocol     = "HTTP/1.0"

port = int(sys.argv[1]) if sys.argv[1:] else 8000
server_address = ('127.0.0.1', port)

HandlerClass.protocol_version = Protocol
httpd = ServerClass(server_address, HandlerClass)

sa = httpd.socket.getsockname()
print(__doc__)
print("Serving HTTP on %s, port %d..." % (sa[0], sa[1]))
httpd.serve_forever()

然后,使用 pyInstaller 制作成 Windows 平台可执行的绿色软件,就大功告成了。

pySimpleHTTPServer 的用法很简单,直接双击,然后在浏览器访问 http://127.0.0.1:8000 就可以了,网站的根目录就是 pySimpleHTTPServer 程序所在的目录。也可以使用命令行运行,如:

cmd> pySimpleHTTPServer 8080

其中第二个参数是 HTTP 服务的端口,如果省略则为 8000,可以指定其它值。

最后,再贴一下下载地址:http://www.everbox.com/f/MQH4VdlA822odpKOuvkPkUUEuV

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s