Python内置的HTTP协议服务器SimpleHTTPServer使用指南


Posted in Python onMarch 30, 2016

首先确保装了Python,我装的是2.x版本,对了,我的操作系统是WIN7,其实对于Python来说,什么操作系统并不重要。Python内置了一个简单的HTTP服务器,只需要在命令行下面敲一行命令,一个HTTP服务器就起来了:

python -m SimpleHTTPServer 80

后面的80端口是可选的,不填会采用缺省端口8000。注意,这会将当前所在的文件夹设置为默认的Web目录,试着在浏览器敲入本机地址:

http://localhost:80
如果当前文件夹有index.html文件,会默认显示该文件,否则,会以文件列表的形式显示目录下所有文件。这样已经实现了最基本的文件分享的目的,你可以做成一个脚本,再建立一个快捷方式,就可以很方便的启动文件分享了。如果有更多需求,完全可以根据自己需要定制,具体的请参见官方文档SimpleHTTPServer,或者直接看源码。我拷贝一段,方便参考:

import SimpleHTTPServer
import SocketServer

PORT = 8000

Handler = SimpleHTTPServer.SimpleHTTPRequestHandler

httpd = SocketServer.TCPServer(("", PORT), Handler)

print "serving at port", PORT
httpd.serve_forever()

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

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 下工作。

Python 相关文章推荐
python实现自动更换ip的方法
May 05 Python
详解Python发送邮件实例
Jan 10 Python
python遍历 truple list dictionary的几种方法总结
Sep 11 Python
详解python发送各类邮件的主要方法
Dec 22 Python
使用paramiko远程执行命令、下发文件的实例
Oct 01 Python
python把1变成01的步骤总结
Feb 27 Python
Python绘图Matplotlib之坐标轴及刻度总结
Jun 28 Python
如何实现Django Rest framework版本控制
Jul 25 Python
Flask框架重定向,错误显示,Responses响应及Sessions会话操作示例
Aug 01 Python
python 使用shutil复制图片的例子
Dec 13 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
Jun 03 Python
Python __slots__的使用方法
Nov 15 Python
横向对比分析Python解析XML的四种方式
Mar 30 #Python
python简单实现刷新智联简历
Mar 30 #Python
详解Python迭代和迭代器
Mar 28 #Python
Python读大数据txt
Mar 28 #Python
Python常用的爬虫技巧总结
Mar 28 #Python
Python对数据库操作
Mar 28 #Python
Python字符串切片操作知识详解
Mar 28 #Python
You might like
一个用mysql_odbc和php写的serach数据库程序
2006/10/09 PHP
探讨PHP JSON中文乱码的解决方法详解
2013/06/06 PHP
Discuz!X中SESSION机制实例详解
2015/09/23 PHP
Zend Framework教程之Bootstrap类用法概述
2016/03/14 PHP
PHP抓取远程图片(含不带后缀的)教程详解
2016/10/21 PHP
PHP实现对数字分隔加千分号的方法
2019/03/18 PHP
一个可以随意添加多个序列的tag函数
2009/07/21 Javascript
document.body.scrollTop 值总为0的解决方法 比较常见的标准问题
2009/11/30 Javascript
jquery 重写 ajax提交并判断权限后 使用load方法报错解决方法
2016/01/19 Javascript
JavaScript中eval函数的问题
2016/01/31 Javascript
超实用的JavaScript代码段 附使用方法
2016/05/22 Javascript
jQuery扩展实现text提示还能输入多少字节的方法
2016/11/28 Javascript
jQuery UI Grid 模态框中的表格实例代码
2017/04/01 jQuery
微信小程序 首页制作简单实例
2017/04/07 Javascript
jQuery ajax请求struts action实现异步刷新
2017/04/19 jQuery
vue实现长图垂直居上 vue实现短图垂直居中
2017/10/18 Javascript
JS实现的小火箭发射动画效果示例
2018/12/08 Javascript
vue-quill-editor 自定义工具栏和自定义图片上传路径操作
2020/08/03 Javascript
[04:32]玩具屠夫中文语音节选
2020/08/23 DOTA
python 换位密码算法的实例详解
2017/07/19 Python
python扫描proxy并获取可用代理ip的实例
2017/08/07 Python
Python 比较两个数组的元素的异同方法
2017/08/17 Python
opencv python 图像去噪的实现方法
2018/08/31 Python
python得到单词模式的示例
2018/10/15 Python
深入了解和应用Python 装饰器 @decorator
2019/04/02 Python
在PyCharm中实现添加快捷模块
2020/02/12 Python
python Tornado框架的使用示例
2020/10/19 Python
CSS3中利用animation属性创建雪花飘落特效
2014/05/14 HTML / CSS
Canvas多边形绘制的实现方法
2019/08/05 HTML / CSS
西班牙品牌鞋子、服装和配饰在线商店:Esdemarca
2021/02/17 全球购物
eHarmony英国:全球领先的认真恋爱约会平台之一
2020/11/16 全球购物
竞选班长演讲稿
2013/12/30 职场文书
大四学生思想汇报
2014/01/13 职场文书
企业申诉管理制度
2014/01/30 职场文书
消防演习通知
2015/04/25 职场文书
你有一份《诚信考试承诺书》待领取
2019/11/13 职场文书