之前因为传输文件的需要,需要自己搭建文件传输服务器。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文件服务器相关推荐

  1. python搭建内网网站,python搭建服务器

    python搭建服务器 python搭建服务器以快捷著称,实际上,我们也可以使用python搭建简易的服务器. 1.环境配置 当然首先得搭建python的开发环境,对于mac和linux的用户来说,一 ...

  2. HTTPS文件服务器搭建,搭建一个简易的https

    构建一个简易的https需要三个服务器来做实验: CA:centos7 web服务器:centos6 客户端 一.配置CA(centos7) 1.在/etc/pki/CA/下面创建两个文件 echo ...

  3. 如何搭建简易又安全的企业内部文件服务器?

    提到搭建企业内部文件服务器,很多人的第一反应是Samba文件服务器. 确实,在过去的很多年里,大部分企业都是通过Windows Server的域控制器使企业内部员工方便地进行资源共享和使用网络打印机. ...

  4. 使用tomcat搭建简易文件服务器

    使用tomcat搭建简易文件服务器,主要运用在需要存储视频,图片.文档等文件.可以作为文件上传上传下载的地址,在模拟项目开发中有一定作用: 下面就介绍如何使用tomcat搭建简易文件服务器 一.下载一 ...

  5. 使用python搭建一个简易的本地局域网

    使用python搭建一个简易的本地局域网 1.设置python路径为环境变量// python3 2.命令行输入python -m http.server 8888// 或python2 2.命令行输 ...

  6. Python之简易Web框架搭建

    Python之简易Web框架搭建 Web框架介绍 WSGI协议 Web框架开发 项目结构 MyWebServer.py 之前的静态服务器代码 WSGI协议的要求 更新代码 framework.py 返 ...

  7. 搭建一个简易的https

    构建一个简易的https需要三个服务器来做实验: CA:centos7 web服务器:centos6 客户端 一.配置CA(centos7) 1.在/etc/pki/CA/下面创建两个文件 echo ...

  8. 简易有WEB文件服务器,Python实现简易版的Web服务器(推荐).pdf

    Python实实现现简简易易版版的的Web服服务务器器(推推荐荐) 下面给大家介绍python实现简易版的web服务器,具体内容详情大家通过本文学习 ! 1.请自行了解HTTP协议 /article/ ...

  9. python代理池_进击:用Python搭建高匿代理池

    Email: WlRCME0zSjRRR2R0WVdsc0xtTnZiUT09 0x01 写在前面 常听到很多人抱怨自己的IP因爬虫次数太多而被网站屏蔽,不得不频繁使用各种代理IP,却又因为网上的公开 ...

最新文章

  1. Python,OpenCV中的K均值聚类——K-Means Cluster
  2. 吴恩达深度学习笔记(109)-循环神经网络模型(RNN介绍)
  3. 从架构特点到功能缺陷,重新认识分析型分布式数据库
  4. DocumentNavigator是什么东东?
  5. how to render AET extension field as code list
  6. Spring Boot注解详解
  7. python 字典由值找键_python字典怎么根据值返回键
  8. 【LeetCode】剑指 Offer 49. 丑数
  9. 为什么要在主线程更新UI?
  10. C语言获取窗口输入焦点,使按钮获得输入焦点 - rainbowcode的个人空间 - OSCHINA - 中文开源技术交流社区...
  11. ansoft maxwell破解版下载v16 中文版 32bit 64bit 百度云盘分享下载链接目录点击下方链接下载即可获得
  12. 消息总线/消息中间件/消息队列/服务总线
  13. 二级域名解析配置方法
  14. Win10下媲美apt的包管理工具 Scoop 的安装以及常用软件清单
  15. 远端WWW服务支持TRACE请求
  16. 计算机正确的坐姿教案,礼仪课坐姿教案.doc
  17. AD637原理图PCB电路设计,使用经验和建议——【电路模块经验10】
  18. 第十六次ScrumMeeting博客
  19. 2015百度之星资格赛1002
  20. Android之电话拨号器

热门文章

  1. ESP9266 01S 使用arduino进行下载时的设置
  2. ArcMap中的图层样式导入Qgis中-基于ArcMap2SLD
  3. FLASH水波纹效果动画制作教程图文自编
  4. openGauss3.1.0 版本的gs_stack功能解密
  5. 局域网即时聊天工具都有哪些?
  6. 北大软件学院,你能不能矜持一点?
  7. ··· Socks Online - 在内部网也能使用QQ ··· 1
  8. 自定义Edge扩展插件|文章备忘录
  9. USB工作学习笔记(一)
  10. 怎样在线制作动图?教你一键在线生成gif