Python HTTP服务快速搭建

开发 后端
本文介绍如何快速实现一个Python HTTP服务。实现一个微型的HTTP服务程序来说是很简单的事情,在Python下,只需要一个命令行。

你知道么?使用Python可以很快搭建一个HTTP服务器,实现一个微型的Python HTTP服务程序哦!下面讲解Python HTTP服务的实现方法。

如果你急需一个简单的Web Server,但你又不想去下载并安装那些复杂的HTTP服务程序,比如:Apache,ISS等。那么, Python 可能帮助你。使用Python可以完成一个简单的内建 HTTP 服务器。于是,你可以把你的目录和文件都以HTTP的方式展示出来。佻只需要干一件事情,那就是安装一个Python。

实际上来说,这是一个可以用来共享文件的非常有用的方式。实现一个微型的HTTP服务程序来说是很简单的事情,在Python下,只需要一个命令行。下面是这个命令行:(假设我们需要共享我们的目录 /home/haoel 而IP地址是192.168.1.1)

  1. $ cd /home/haoel  
  2. $ python -m SimpleHTTPServer  

这就行了,而我们的HTTP服务在8000号端口上侦听。你会得到下面的信息:

  1. Serving HTTP on 0.0.0.0 port 8000 ... 

你可以打开你的浏览器(IE或Firefox),然后输入下面的URL:

  1. http://192.168.1.1:8000 

如果你的目录下有一个叫 index.html 的文件名的文件,那么这个文件就会成为一个默认页,如果没有这个文件,那么,目录列表就会显示出来。

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

  1. $ python -m SimpleHTTPServer 8080 

如果你只想让这个HTTP服务器服务于本地环境,那么,你需要定制一下你的Python的程序,下面是一个示例:

  1. import sys  
  2. import BaseHTTPServer  
  3. from SimpleHTTPServer import SimpleHTTPRequestHandler  
  4. HandlerClass = SimpleHTTPRequestHandler  
  5. ServerClass  = BaseHTTPServer.HTTPServer  
  6. Protocol     = "HTTP/1.0" 
  7.  
  8. if sys.argv[1:]:  
  9.     port = int(sys.argv[1])  
  10. else:  
  11.     port = 8000 
  12. server_address = ('127.0.0.1', port)  
  13.  
  14. HandlerClass.protocol_version = Protocol  
  15. httpd = ServerClass(server_address, HandlerClass)  
  16.  
  17. sa = httpd.socket.getsockname()  
  18. print "Serving HTTP on", sa[0], "port", sa[1], "..." 
  19. httpd.serve_forever()  

我们的Python HTTP服务这样就完成了。注意:所有的这些东西都可以在 Windows 或 Cygwin 下工作。

【编辑推荐】

  1. 分析Python 3.1核心语言的变化
  2. PHP老手谈PHP和Python的基础特性
  3. Ruby和Python的语法比较
  4. Ruby使用心得汇总:寻找高效的实现
  5. 对话Python之父:Python的成功之路
责任编辑:yangsai 来源: 酷壳
相关推荐

2018-06-15 10:25:43

Python HTTPFTP服务器

2018-12-06 09:23:33

2019-08-22 15:26:24

HTTP服务器Python

2019-07-04 15:00:32

PythonHTTP服务器

2010-02-01 09:55:42

Python HTTP

2016-09-23 21:15:49

阿里云服务器搭建

2021-11-18 20:42:22

数字化

2023-11-23 15:06:36

PythonHTTP服务器

2020-05-20 13:53:41

HTTP环境安装

2019-08-21 17:41:29

操作系统软件设计

2018-04-13 09:39:03

2023-09-26 15:50:21

2020-04-01 11:11:35

Hadoop运行环境分布式

2020-11-20 08:15:40

Grafana + P

2023-08-03 07:35:10

kubernetes云原生

2010-06-04 16:17:02

2021-07-16 09:51:21

kubernetes环境容器

2022-08-14 16:11:23

Python自动化测试数据

2021-08-16 11:25:41

Python云服务云办公

2022-10-19 13:11:35

点赞
收藏

51CTO技术栈公众号