使用 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 相关文章推荐
Python3中常用的处理时间和实现定时任务的方法的介绍
Apr 07 Python
Python数据类型学习笔记
Jan 13 Python
Python Socket编程详细介绍
Mar 23 Python
解决python3 pika之连接断开的问题
Dec 18 Python
在python中使用xlrd获取合并单元格的方法
Dec 26 Python
python实现支付宝转账接口
May 07 Python
Django的性能优化实现解析
Jul 30 Python
Python PyInstaller库基本使用方法分析
Dec 12 Python
python 计算方位角实例(根据两点的坐标计算)
Jan 17 Python
TensorFlow 多元函数的极值实例
Feb 10 Python
python实现电子词典
Mar 03 Python
Python打印特殊符号及对应编码解析
May 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
PHP 七大优势分析
2009/06/23 PHP
Laravel下生成验证码的类
2017/11/15 PHP
PHP array_reduce()函数的应用解析
2018/10/28 PHP
javascript实现网页端解压并查看zip文件
2015/12/15 Javascript
以WordPress为例讲解jQuery美化页面Title的方法
2016/05/23 Javascript
BootStrap使用file-input插件上传图片的方法
2016/09/05 Javascript
bootstrap实现每隔5秒自动轮播效果
2016/12/20 Javascript
Bootstrap 3 按钮标签实例代码
2017/02/21 Javascript
JavaScript实现QQ聊天消息展示和评论提交功能
2017/05/22 Javascript
H5基于iScroll实现下拉刷新和上拉加载更多
2017/07/18 Javascript
详解Angular调试技巧之报错404(not found)
2018/01/31 Javascript
引入外部js脚本加载慢与页面白屏问题的解决
2018/12/10 Javascript
javascript删除数组元素的七个方法示例
2019/09/09 Javascript
JavaScript 实现同时选取多个时间段的方法
2019/10/17 Javascript
vue实现移动端input上传视频、音频
2020/08/18 Javascript
vue $router和$route的区别详解
2020/12/02 Vue.js
[01:09]DOTA2次级职业联赛 - ishow.HMM战队宣传片
2014/12/01 DOTA
python批量下载图片的三种方法
2013/04/22 Python
python 3.6 tkinter+urllib+json实现火车车次信息查询功能
2017/12/20 Python
Django实现跨域的2种方法
2019/07/31 Python
python利用datetime模块计算程序运行时间问题
2020/02/20 Python
Python如何读写CSV文件
2020/08/13 Python
Python项目实战之使用Django框架实现支付宝付款功能
2021/02/23 Python
使用canvas绘制超炫时钟
2014/12/17 HTML / CSS
Europcar葡萄牙:葡萄牙汽车和货车租赁
2017/10/13 全球购物
如何判断计算机可能已经中马
2013/03/22 面试题
工程造价专业大学生自荐信
2013/10/01 职场文书
城市规划毕业生求职信
2013/10/10 职场文书
医科大学生毕业的自我评价分享
2013/11/12 职场文书
市场开发与营销专业求职信
2013/12/31 职场文书
《三袋麦子》教学反思
2014/03/02 职场文书
模具设计与制造专业求职信
2014/07/19 职场文书
天猫活动策划方案
2014/08/21 职场文书
前台岗位职责范本
2015/04/16 职场文书
2015年六年级班主任工作总结
2015/10/15 职场文书
vue-cli3.x配置全局的scss的时候报错问题及解决
2022/04/30 Vue.js