之前因为传输文件的需要,需要自己搭建文件传输服务器。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. sublime python配置_sublime python环境配置
  2. Word、Acrobat 中的朗读功能
  3. leetcode刷题实录:1
  4. Java不可变类作为参数传递遇到的坑
  5. 使用iPhone相机和OpenCV来完成3D重建(第一部分)
  6. 12行代码AC——UVa 151 - Power Crisis(约瑟夫环)
  7. android关机充电流程、充电画面显示
  8. 祥云,灯笼,剪纸……春节海报,点缀必备PSD素材
  9. flutter html 加载_Flutter开发:项目加载本地html文件的步骤
  10. mysql一对多前端实现_django一对多模型以及如何在前端实现详解
  11. M1下载Photoshop CC2019亲测可用
  12. 第九届蓝桥杯 b组 明码
  13. c语言中lu是什么数据类型,C语言编程入门之--第四章C语言基本数据类型
  14. DDD(领域驱动设计)系列主题:基础概念对象介绍(实体,值对象,仓储等)
  15. 编译原理陈火旺第三版第六章课后题答案
  16. WIN7下弹出应用程序兼容性助手解决
  17. 600度近视眼恢复方法_近视孩子的家长看看:600度以上近视可致盲,不花钱恢复视力法...
  18. 激光切割dxf图案下载
  19. Node.js详细下载与安装
  20. STM32内存分布学习

热门文章

  1. 百度竞价推广优化怎么做?
  2. OpenCV学习笔记3:找出人脸,同时比较两张图片中的人脸相似度
  3. mhdd应用详解-入门篇(图文教程)
  4. 入行pcb设计,到底该学哪款工具软件
  5. 基于FPGA的CIC滤波器设计(2)——以数字上下变频为例讲解
  6. 系统架构专题(1):大型互联网系统架构演变
  7. IDEA如何设置启动参数,环境变量
  8. 概率论与数理统计学习笔记(2)——联合概率、条件概率与边缘概率
  9. BP神经网络进阶-MINIST分类
  10. talent 命令_telnet命令,详细教您telnet命令的用法