这篇文章主要介绍了Python内置的HTTP协议服务器SimpleHTTPServer使用指南,SimpleHTTPServer本身的功能十分简单,文中介绍了需要的朋友可以参考下
首先确保装了Python,我装的是2.x版本,对了,我的操作系统是WIN7,其实对于Python来说,什么操作系统并不重要。Python内置了一个简单的HTTP服务器,只需要在命令行下面敲一行命令,一个HTTP服务器就起来了:
<code>python </code><code>-</code><code>m SimpleHTTPServer </code><code>80</code>
后面的80端口是可选的,不填会采用缺省端口8000。注意,这会将当前所在的文件夹设置为默认的Web目录,试着在浏览器敲入本机地址:
http://localhost:80
<code>import</code> <code>SimpleHTTPServer</code>
<code>import</code> <code>SocketServer</code>
<code> </code>
<code>PORT </code><code>=</code> <code>8000</code>
<code>Handler </code><code>=</code> <code>SimpleHTTPServer.SimpleHTTPRequestHandler</code>
<code>httpd </code><code>=</code> <code>SocketServer.TCPServer(("", PORT), Handler)</code>
<code>print</code> <code>"serving at port"</code><code>, PORT</code>
<code>httpd.serve_forever()</code>
如果你想改变端口号,你可以使用如下的命令:
<code>python </code><code>-</code><code>m SimpleHTTPServer </code><code>8080</code>
如果你只想让这个HTTP服务器服务于本地环境,那么,你需要定制一下你的Python的程序,下面是一个示例:
<code>import</code> <code>sys </code>
<code>import</code> <code>BaseHTTPServer </code>
<code>from</code> <code>SimpleHTTPServer </code><code>import</code> <code>SimpleHTTPRequestHandler </code>
<code>HandlerClass </code><code>=</code> <code>SimpleHTTPRequestHandler </code>
<code>ServerClass </code><code>=</code> <code>BaseHTTPServer.HTTPServer </code>
<code>Protocol </code><code>=</code> <code>"HTTP/1.0"</code>
<code> </code>
<code>if</code> <code>sys.argv[</code><code>1</code><code>:]: </code>
<code> </code><code>port </code><code>=</code> <code>int</code><code>(sys.argv[</code><code>1</code><code>]) </code>
<code>else</code><code>: </code>
<code> </code><code>port </code><code>=</code> <code>8000</code>
<code>server_address </code><code>=</code> <code>(</code><code>'127.0.0.1'</code><code>, port) </code>
<code>HandlerClass.protocol_version </code><code>=</code> <code>Protocol </code>
<code>httpd </code><code>=</code> <code>ServerClass(server_address, HandlerClass) </code>
<code>sa </code><code>=</code> <code>httpd.socket.getsockname() </code>
<code>print</code> <code>"Serving HTTP on"</code><code>, sa[</code><code>0</code><code>], </code><code>"port"</code><code>, sa[</code><code>1</code><code>], </code><code>"..."</code>
注意:所有的这些东西都可以在 Windows 或 Cygwin 下工作。
本文转自 Tenderrain 51CTO博客,原文链接:http://blog.51cto.com/tenderrain/1980603