程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Python >> 非常簡單的Python HTTP服務

非常簡單的Python HTTP服務

編輯:Python

如果你急需一個簡單的Web Server,但你又不想去下載並安裝那些復雜的HTTP服務程序,比如:Apache,ISS等。那麼, Python 可能幫助你。使用Python可以完成一個簡單的內建 HTTP 服務器。於是,你可以把你的目錄和文件都以HTTP的方式展示出來。佻只需要干一件事情,那就是安裝一個Python。

實際上來說,這是一個可以用來共享文件的非常有用的方式。實現一個微型的HTTP服務程序來說是很簡單的事情,在Python下,只需要一個命令行。下面是這個命令行:(假設我們需要共享我們的目錄 /home/haoel 而IP地址是192.168.1.1)

$ cd /home/haoel
$ python -m SimpleHTTPServer

 

這就行了,而我們的HTTP服務在8000號端口上偵聽。你會得到下面的信息:

Serving HTTP on 0.0.0.0 port 8000 ...

你可以打開你的浏覽器(IE或Firefox),然後輸入下面的URL:

http://192.168.1.1:8000

如果你的目錄下有一個叫 index.html 的文件名的文件,那麼這個文件就會成為一個默認頁,如果沒有這個文件,那麼,目錄列表就會顯示出來。

如果你想改變端口號,你可以使用如下的命令:

$ python -m SimpleHTTPServer 8080

如果你只想讓這個HTTP服務器服務於本地環境,那麼,你需要定制一下你的Python的程序,下面是一個示例:

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

if sys.argv[1:]:
    port = int(sys.argv[1])
else:
    port = 8000
server_address = ('127.0.0.1', 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()

注意:所有的這些東西都可以在 Windows 或 Cygwin 下工作。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved