使用 Python 快速实现 HTTP 和 FTP 服务器的方法


Posted in Python onJuly 22, 2019

有时你需临时搭建一个简单的 Web Server,但你又不想去安装 ApacheNginx 等这类功能较复杂的 HTTP 服务程序时。这时可以使用 Python 内建的 SimpleHTTPServer 模块快速搭建一个简单的 HTTP 服务器。

SimpleHTTPServer 模块可以把你指定目录中的文件和文件夹以一个简单的 Web 页面的方式展示出来。假设我们需要以 Web 方式共享目录 /Users/Mike/Docker,只需要以下这个命令行就可以轻松实现:

$ cd /Users/Mike/Docker
$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...

SimpleHTTPServer 模块默认会在 8000 端口上监听一个 HTTP 服务,这时就可以打开浏览器输入 http://IP:Port 访问这个 Web 页面。例如类似下面的 URL:

http://192.168.100.49:8000

如果你需要 Web 服务有一个默认页,可以在目录下创建一个名为 index.html 的文件。如果没有默认页,那么会以列表的形式将目录中的内容显示出来。

如果默认的 8000 端口已经被占用,你想换成使用其它端口号,可以使用如下的命令:

$ python -m SimpleHTTPServer 8080

用 Python 快速实现 FTP 服务器

有时当你想快速搭建一个 FTP 服务器来临时实现文件上传下载时,这是特别有用的。我们这里利用 PythonPyftpdlib 模块可以快速的实现一个 FTP 服务器的功能。

首先安装 Pyftpdlib 模块

$ sudo pip install pyftpdlib

通过 Python-m 选项将 Pyftpdlib 模块作为一个简单的独立服务器来运行,假设我们需要共享目录 /Users/Mike/Docker,只需要以下这个命令行就可以轻松实现:

$ cd /Users/Mike/Docker
$ python -m pyftpdlib
[I 2018-01-02 16:24:02] >>> starting FTP server on :::2121, pid=7517 <<<
[I 2018-01-02 16:24:02] concurrency model: async
[I 2018-01-02 16:24:02] masquerade (NAT) address: None
[I 2018-01-02 16:24:02] passive ports: None

至此一个简单的 FTP 服务器已经搭建完成,访问 ftp://IP:PORT 即可。例如类似下面的 URL:

总结

以上所述是小编给大家介绍的用 Python 快速实现 HTTP 和 FTP 服务器的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python读写unicode文件的方法
Jul 10 Python
python使用MySQLdb访问mysql数据库的方法
Aug 03 Python
浅谈使用Python内置函数getattr实现分发模式
Jan 22 Python
python版飞机大战代码分享
Nov 20 Python
程序员写Python时的5个坏习惯,你有几条?
Nov 26 Python
Python 通过调用接口获取公交信息的实例
Dec 17 Python
python实现祝福弹窗效果
Apr 07 Python
pycharm修改file type方式
Nov 19 Python
tensorflow求导和梯度计算实例
Jan 23 Python
Python简单实现词云图代码及步骤解析
Jun 04 Python
pytorch 如何把图像数据集进行划分成train,test和val
May 31 Python
python 爬取哔哩哔哩up主信息和投稿视频
Jun 07 Python
Django框架静态文件使用/中间件/禁用ip功能实例详解
Jul 22 #Python
python多进程下实现日志记录按时间分割
Jul 22 #Python
Django框架自定义模型管理器与元选项用法分析
Jul 22 #Python
python实现日志按天分割
Jul 22 #Python
python re.sub()替换正则的匹配内容方法
Jul 22 #Python
简单了解python gevent 协程使用及作用
Jul 22 #Python
利用Pandas和Numpy按时间戳将数据以Groupby方式分组
Jul 22 #Python
You might like
浅析get与post的一些特殊情况
2014/07/28 PHP
百度地图API使用方法详解
2015/08/25 PHP
php5.2的curl-bug 服务器被php进程卡死问题排查
2016/09/19 PHP
替换php字符串中的单引号为双引号的方法
2017/02/16 PHP
使用WAMP搭建PHP本地开发环境
2017/05/10 PHP
用js实现的抽象CSS圆角效果!!
2007/05/03 Javascript
ASP.NET jQuery 实例10 动态修改hyperlink的URL值
2012/02/03 Javascript
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
解析js如何获取当前url中的参数值并复制给input
2013/06/23 Javascript
JS动态添加与删除select中的Option对象(示例代码)
2013/12/25 Javascript
通过BootStrap实现轮播图的实际应用
2016/09/26 Javascript
利用jQuery实现滑动开关按钮效果(附demo源码下载)
2017/02/07 Javascript
JS表单数据验证的正则表达式(常用)
2017/02/18 Javascript
jQuery Masonry瀑布流布局神器使用详解
2017/05/25 jQuery
JS中Swiper的使用和轮播图效果
2017/08/11 Javascript
node.js中http模块和url模块的简单介绍
2017/10/06 Javascript
关于layui表单中按钮自动提交的解决方法
2019/09/09 Javascript
解决layer.open弹出框不能获取input框的值为空的问题
2019/09/10 Javascript
vue + elementUI实现省市县三级联动的方法示例
2019/10/29 Javascript
vue使用微信扫一扫功能的实现代码
2020/04/11 Javascript
JavaScript通如何过RGraph实现动态仪表盘
2020/10/15 Javascript
js实现弹幕墙效果
2020/12/10 Javascript
Python安装Imaging报错:The _imaging C module is not installed问题解决方法
2014/08/22 Python
Django URL传递参数的方法总结
2016/08/28 Python
numpy给array增加维度np.newaxis的实例
2018/11/01 Python
Python开发之基于模板匹配的信用卡数字识别功能
2020/01/13 Python
Python列表切片常用操作实例解析
2020/03/10 Python
世界首屈一指的在线男士内衣权威:HisRoom
2017/08/05 全球购物
欧洲最大的预定车位市场:JustPark
2020/01/06 全球购物
PHP如何设置和取得Cookie值
2015/06/30 面试题
运动会获奖感言
2014/02/11 职场文书
工作表扬信
2015/01/17 职场文书
酒店辞职书范文
2015/02/26 职场文书
政协委员个人总结
2015/03/03 职场文书
2015建军节87周年演讲稿
2015/03/19 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server