用Python自带的包创建简单的web服务器

利用Python自带的包能够创建简单的web服务器。在DOS里cd到准备作服务器根目录的路径下,输入命令:

  • python -m Web服务器模块 [端口号,默认8000]

例如:html

  • python -m SimpleHTTPServer 8080

建立成功之后,DOS界面会显示如下内容:

Serving HTTP on 0.0.0.0 port 8000 ...
Traceback (most recent call last):
  File "C:\Program Files (x86)\Workpython\lib\runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "C:\Program Files (x86)\Workpython\lib\runpy.py", line 72, in _run_code
    exec code in run_globals
  File "C:\Program Files (x86)\Workpython\lib\SimpleHTTPServer.py", line 235, in <module>
    test()
  File "C:\Program Files (x86)\Workpython\lib\SimpleHTTPServer.py", line 231, in test
    BaseHTTPServer.test(HandlerClass, ServerClass)
  File "C:\Program Files (x86)\Workpython\lib\BaseHTTPServer.py", line 610, in test
    httpd.serve_forever()
  File "C:\Program Files (x86)\Workpython\lib\SocketServer.py", line 231, in serve_forever
    poll_interval)
  File "C:\Program Files (x86)\Workpython\lib\SocketServer.py", line 150, in _eintr_retry
    return func(*args)
KeyboardInterruptpython

 

第一行表示的是你所打开的窗口,

后面则显示当前文件夹当中的内容以及他们的位置。

有一点要注意,若是你关闭了DOS窗口,那么服务器便会关闭。

而后你能够在浏览器中输入

  • http://localhost:端口号/路径

来访问服务器资源。 
例如:

  • http://localhost:8080/index.html

 

这里的“Web服务器模块”有以下三种:

  • BaseHTTPServer: 提供基本的Web服务和处理器类,分别是HTTPServer和BaseHTTPRequestHandler。
  • SimpleHTTPServer: 包含执行GET和HEAD请求的SimpleHTTPRequestHandler类。
  • CGIHTTPServer: 包含处理POST请求和执行CGIHTTPRequestHandler类。

ps:web

以上是在python 2的试验下成功的,实际应用中可能由于一些状况影响而有所不一样,最近换了python 3,用python -m SimpleHTTPServer 8000又不行了。浏览器

若是是python 3的话,使用如下语句:
python -m http.server 8000服务器

(8000是端口号,可不加,默认8000)spa

相关文章
相关标签/搜索