ENSP如何开启服务器的http_Python一秒搭建ftp服务器,帮助你在局域网共享文件-程序员宅基地

技术标签: 服务器后台定时运行python文件  ENSP如何开启服务器的http  

共享文件

熟悉Python的朋友们都知道,python自带了一个Simple HTTP Server,可以使用一行代码完成文件的局域网共享操作。

5c4bb738a8385c58122222a9699011e3.png

首先进入你需要设置的http服务器目录 (我以自己电脑路径:F:/Working~Study) ,即进入到该目录下,然后:

  • python2: python -m SimpleHTTPServer port
  • python3: python -m http.server port

我是用一个8888的端口启动服务,最终的共享效果,如下图:

b601d01a9a5e0c945b90d0fcc47c4420.png

通过一行代码,我们完成了文件共享的http服务,但这个服务有几个问题,仅提供了下载功能无法上传,最重要的是没有权限控制功能,这就极其不安全了!该如何解决这个问题呢?我之前用Flask写了一个功能更完善的httpserver:

5c6ca62431327f46e7210ce322c8b895.gif

Ftp服务器搭建

模块安装

python没有内置ftp模块,但要使用它却很简单,我们只需要简单的通过pip安装即可:

pip install pyftpdlib

简单共享

模块安装完成后,我们找到需要共享的目录,然后启动cmd后,输入:

python -m pyftpdlib -p 21

之后浏览器登陆ftp://ip:port,这样就开启了一个最简单的ftp共享服务。

首先我们使用浏览器登陆看下效果:

5fdcd138107232551ff75e2a9080898d.png

之后,我们在使用xftp工具登陆:

7000f349b28ada689371534b38a9775c.png

但此时,我们只是通过匿名用户anonymous,密码空的方式进行访问,只能使用ftp下载功能,而无法上传…

高级使用

简单的ftp搭建方式,肯定不满足我们的要求,那么我么就需要进行二次开发了!但也仅仅需要几行代码而已:

简单的ftp搭建方式,肯定不满足我们的要求,那么我么就需要进行二次开发了!但也仅仅需要几行代码而已:

from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
from pyftpdlib.authorizers import DummyAuthorizer
authorizer = DummyAuthorizer()
authorizer.add_user('python', '123456', 'F:Working~Study', perm='elradfmwM')
handler = FTPHandler
handler.authorizer = authorizer
server = FTPServer(('0.0.0.0', 8888), handler)
server.serve_forever()

f5c1de0a3b0a3439559e5d74ca99a4d8.gif

不管是windows还是linux服务器下,你还能想到比python搭建FTP服务器更简单的方式吗?哈哈…

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39933713/article/details/110090878

智能推荐

python字符串类型_Python-数据类型-字符串-程序员宅基地

文章浏览阅读278次。数据类型-字符串字符串是 python最常见的基本数据类型之一,常见的定义方式是一对单引号( '……')或者一对双引号 ("……")创建,多行字符串也可使用三单引号或者三双引号定义。1. 特点不可变类型: 在元素定义之后不能对其进行修改,否则会报错可以进行切片和索引操作: 索引下标从零开始示例a = "hello world"b = 'hello python'print(type(a), typ..._name[:-4:-1]

【渝偲】DSPE-PEG-Galactose;DSPE-PEG-半乳糖;磷脂聚乙二醇半乳糖 长循环脂质体-程序员宅基地

文章浏览阅读680次。中文名称:磷脂-聚乙二醇-半乳糖 半乳糖-聚乙二醇-磷脂简称:DSPE-PEG-Galactose Galactose-PEG-DSPE外观: 根据不同的分子量为半固体或固体分子量(PEG ):1000、2000、3400、5000,其他分子量可以定制。溶剂:溶于部分常规有机溶剂存储条件:-20℃以下冰冻、干燥、避光。长期保存惰性(氩气或者氮气)保护。二硬脂酰磷脂酰乙醇胺-聚乙二醇-半乳糖对脂质体表面进行聚乙二醇修饰后,得到长循环脂质体可以延长脂质体的半衰期和提高它在血液循环中的稳定性、改变脂质体的生物_dspe-peg-gal

Spring Security自定义登录验证(不使用userDetailsService)_spring security 不使用userdetailservice-程序员宅基地

文章浏览阅读1.3w次,点赞2次,收藏16次。一:功能说明实现了自定义登录验证(AuthenticationProvider)二:具体代码1.自定义AuthenticationProvider/** * @author LEI * Created by LEI on 2019/5/30. */@Componentpublic class MyAuthenticationProvider implements A..._spring security 不使用userdetailservice

PropertiesHelper.java_java propertieshelper-程序员宅基地

文章浏览阅读1.3k次。import java.util.HashMap;import java.util.Map;import java.util.Properties;import java.util.StringTokenizer;public final class PropertiesHelper { public static boolean getBoolean(String property_java propertieshelper

ruby-attr_accessor使用-程序员宅基地

文章浏览阅读276次。ruby-attr_accessor使用 ruby语法-attr_accessor方法使用本文主要讲解下ruby下attr_accessor方法的使用。示例1:class Personendperson = Person.newperson.name # => no method error显然,我们Person类里没有定义n..._ruby attr_accessor

【题解】Layout POJ - 3169(差分约束 BellmanFord) -程序员宅基地

文章浏览阅读457次。Layout POJ - 3169 像其他人一样,奶牛在排队饲料时喜欢靠近他们的朋友。 FJ有N(2 <= N <= 1,000)个编号为1…N的奶牛从左到右按照编号从小到大站在一条直线上等待饲料。牛的数量与它们的编号相同,因为它们可能相当具有挑战性,所以有可能两头或多头奶牛可以在同一位置排队(也就是说,如果我们将每只奶牛看作是位于在数字线上的某个坐标上,那么两个或更多的母牛可以共享..._layout poj

随便推点

NVIDIA DALI从入门到放弃之一:概述_nvidia dail-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏19次。NVIDIA DALI从入门到放弃之一:概述NVIDIA DALI从入门到放弃之二:入门示例NVIDIA DALI从入门到放弃之三:Data LoadingNVIDIA DALI从入门到放弃之四:Multiple GPUNVIDIA DALI从入门到放弃之五:Image ProcessingNVIDIA DALI从入门到放弃之六:Geometric TransformsNVIDIA DALI从入门到放弃之七:Sequence ProcessingNVIDIA DALI从入门到放弃之八:PyTo_nvidia dail

csf的安装-程序员宅基地

文章浏览阅读165次。安装CSF 防火墙通常是我们在服务器上所做的第二件事。防火墙的主要目的是为了帮助完成如下任务:1 防止暴力破解密码,自动屏蔽连续登陆失败的IP2 管理网络端口,只开放必要的端口3 免疫小流量的 DDos 和 CC ***。(对于免疫这些的*** 个人感觉也就那么回事)CSF是一个功能完善的防火墙,并且提供 cPanel 插件,便于管理。当然除了 Web GUI..._如何安装csf包

CMake 使用_set( cmake_cxx_flags "${cmake_cxx_flags} -y_gpp")-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏6次。CMake使用_set( cmake_cxx_flags "${cmake_cxx_flags} -y_gpp")

ai换脸可以突破人脸识别吗,有没有技术可以攻破_ai换脸可以人脸识别吗-程序员宅基地

文章浏览阅读177次。在机器学习中,对抗性攻击指的是利用模型的弱点来误导模型做出错误决策的方法。通过对抗性攻击生成的图像或视频可能包含细微的、专门设计的扰动,这些扰动对人眼几乎不可见,但可以使得人脸识别系统无法正确识别。如果AI生成的换脸图像足够逼真,它可能会误导基于图像的人脸识别系统。尽管采取了这些防御措施,没有任何安全系统是绝对安全的,而技术的进步总是在不断地推动攻防之间的较量。通过创建目标人脸的3D模型,并将其用于生成图像或视频,可以生成能够误导2D或3D人脸识别系统的视觉内容。_ai换脸可以人脸识别吗

Webstorm+Nodejs+webpack+vue-cli+Git搭建vue环境_webstorm环境配置-程序员宅基地

文章浏览阅读1.8k次。此笔记归纳整理webstorm搭建vue项目,仅作记录使用。_webstorm环境配置

VS2012中解决方案资源管理器的图标含义-程序员宅基地

文章浏览阅读4.3k次,点赞4次,收藏7次。VS2012的功能比VS2010强大一些,以解决方案资源管理器为例,VS2010里仅提取了文件名信息,如xx.h或xx.c等,而VS2012还提取了全局变量(包括结构体),函数名,宏定义等信息,并且用特定的图标加以表示,更便于阅读和掌握project的数据结构情况。下面整理一些我见过的图标及其含义(可能有误,欢迎各路大神挑错~)...

推荐文章

热门文章

相关标签