Python搭建简易HTTP/HTTPS文件服务器
之前因为传输文件的需要,需要自己搭建文件传输服务器。FTP/FTPS文件服务器比较容易,因为相关的软件很多。关于HTTP/HTTPS文件服务器的介绍相对来说要少很多,网上关于HTTP/HTTPS文件服务器的搭建方法杂乱无章,很多方法根本是不可用的。因此,我特意总结了使用Python搭建简易HTTP/HTTPS文件服务器的方法。
一、从GitHub下载源码
经过多次的尝试,我在GitHub发现了一个好用的Python编写的HTTP/HTTPS文件服务器,源码下载地址:https://github.com/eloypgz/httpsweet 。这个文件服务器是用Python3写成的。
二、编译生成文件服务器
对源码进行编译:
python3 setup.py install
生成的最终的可用的文件是:httpsweet-master\build\scripts-3.7\httpsweet。
三、httpsweet的使用方法
很遗憾,GitHub的作者并没有详细介绍httpsweet的用法。httpsweet的主要参数:
port:监听的端口号,默认为8000
--bind:绑定的IP地址,默认为0.0.0.0
--directory:指定的共享目录
--cert:HTTPS文件服务器需要的证书
--key:HTTPS文件服务器需要的私钥,与--cert参数一起使用
-h:帮助说明
复制代码
1、HTTP文件服务器
HTTP文件服务器只需要指定IP地址、端口号和共享目录即可:
python3 httpsweet --bind {ip} --directory {directory} {port}
2、HTTPS文件服务器
使用HTTPS文件服务器的时候,需要指定证书和私钥。使用openssl生成需要的证书和私钥:
openssl genrsa -out test.key 2048
openssl req -new -x509 -days 3650 -key test.key -out test.crt
复制代码
其中,test.crt为证书,test.key为私钥。
HTTPS文件服务器的使用方法为:
python3 httpsweet --bind {ip} --directory {directory} --cert {cert} --key {key} {port}
四、上传下载文件
GitHub上介绍的上传下载文件的方法很繁琐,对于我们来说,简单的curl命令即可实现文件的上传和下载。一般来说,linux系统自带curl命令;windows系统需要单独安装curl,下载地址为:https://curl.se/download.html 。
上传文件命令:
curl -o {filename} https://{ip}:{port}/{filename}
下载文件命令:
curl -T {filename} https://{ip}:{port}/{filename}
Python搭建简易HTTP/HTTPS文件服务器相关推荐
- python搭建内网网站,python搭建服务器
python搭建服务器 python搭建服务器以快捷著称,实际上,我们也可以使用python搭建简易的服务器. 1.环境配置 当然首先得搭建python的开发环境,对于mac和linux的用户来说,一 ...
- HTTPS文件服务器搭建,搭建一个简易的https
构建一个简易的https需要三个服务器来做实验: CA:centos7 web服务器:centos6 客户端 一.配置CA(centos7) 1.在/etc/pki/CA/下面创建两个文件 echo ...
- 如何搭建简易又安全的企业内部文件服务器?
提到搭建企业内部文件服务器,很多人的第一反应是Samba文件服务器. 确实,在过去的很多年里,大部分企业都是通过Windows Server的域控制器使企业内部员工方便地进行资源共享和使用网络打印机. ...
- 使用tomcat搭建简易文件服务器
使用tomcat搭建简易文件服务器,主要运用在需要存储视频,图片.文档等文件.可以作为文件上传上传下载的地址,在模拟项目开发中有一定作用: 下面就介绍如何使用tomcat搭建简易文件服务器 一.下载一 ...
- 使用python搭建一个简易的本地局域网
使用python搭建一个简易的本地局域网 1.设置python路径为环境变量// python3 2.命令行输入python -m http.server 8888// 或python2 2.命令行输 ...
- Python之简易Web框架搭建
Python之简易Web框架搭建 Web框架介绍 WSGI协议 Web框架开发 项目结构 MyWebServer.py 之前的静态服务器代码 WSGI协议的要求 更新代码 framework.py 返 ...
- 搭建一个简易的https
构建一个简易的https需要三个服务器来做实验: CA:centos7 web服务器:centos6 客户端 一.配置CA(centos7) 1.在/etc/pki/CA/下面创建两个文件 echo ...
- 简易有WEB文件服务器,Python实现简易版的Web服务器(推荐).pdf
Python实实现现简简易易版版的的Web服服务务器器(推推荐荐) 下面给大家介绍python实现简易版的web服务器,具体内容详情大家通过本文学习 ! 1.请自行了解HTTP协议 /article/ ...
- python代理池_进击:用Python搭建高匿代理池
Email: WlRCME0zSjRRR2R0WVdsc0xtTnZiUT09 0x01 写在前面 常听到很多人抱怨自己的IP因爬虫次数太多而被网站屏蔽,不得不频繁使用各种代理IP,却又因为网上的公开 ...
最新文章
- Python,OpenCV中的K均值聚类——K-Means Cluster
- 吴恩达深度学习笔记(109)-循环神经网络模型(RNN介绍)
- 从架构特点到功能缺陷,重新认识分析型分布式数据库
- DocumentNavigator是什么东东?
- how to render AET extension field as code list
- Spring Boot注解详解
- python 字典由值找键_python字典怎么根据值返回键
- 【LeetCode】剑指 Offer 49. 丑数
- 为什么要在主线程更新UI?
- C语言获取窗口输入焦点,使按钮获得输入焦点 - rainbowcode的个人空间 - OSCHINA - 中文开源技术交流社区...
- ansoft maxwell破解版下载v16 中文版 32bit 64bit 百度云盘分享下载链接目录点击下方链接下载即可获得
- 消息总线/消息中间件/消息队列/服务总线
- 二级域名解析配置方法
- Win10下媲美apt的包管理工具 Scoop 的安装以及常用软件清单
- 远端WWW服务支持TRACE请求
- 计算机正确的坐姿教案,礼仪课坐姿教案.doc
- AD637原理图PCB电路设计,使用经验和建议——【电路模块经验10】
- 第十六次ScrumMeeting博客
- 2015百度之星资格赛1002
- Android之电话拨号器
热门文章
- ESP9266 01S 使用arduino进行下载时的设置
- ArcMap中的图层样式导入Qgis中-基于ArcMap2SLD
- FLASH水波纹效果动画制作教程图文自编
- openGauss3.1.0 版本的gs_stack功能解密
- 局域网即时聊天工具都有哪些?
- 北大软件学院,你能不能矜持一点?
- ··· Socks Online - 在内部网也能使用QQ ··· 1
- 自定义Edge扩展插件|文章备忘录
- USB工作学习笔记(一)
- 怎样在线制作动图?教你一键在线生成gif