python中http.server内置库构建临时文件服务
需要从linux开发机上下载一个文件到本地,约700M比较大,通过sz命令下载较慢且传输过程不稳定连续失败,后采用下面方式解决。
cd到一个目录下执行python -m http.server port,port为服务的端口号:

启动后浏览器中访问服务地址,从这里可以直接查看目录下所有的文件&下载。

下面是服务的参数源码:

主要参数:
-b绑定服务监听的ip地址,默认值0.0.0.0公网所有ip都可以访问,127.0.0.1只能本机访问,该参数不用调整。-d设置哪个目录作为根目录,默认值执行命令时的当前所在目录。port指定端口号,默认值8000,指定0会随机分配一个未使用的端口。
-d参数在一些较低python版本中可能没有,上面源码版本是Python 3.12.2,在Python 3.6.5版本中就没有这个参数。可以通过下面代码找到服务的源代码文件位置,直接查看源代码确定支不支持该参数。
import http.server import inspect print(inspect.getfile(http.server)) # 返回 http.server 模块的文件路径。
注意
启动服务后可能仍然访问不了服务,检查服务器端口配置,分配的端口是否对外可见。
可以通过nc命令测试:
1.服务器上指定监听的端口:nc -l -p port。
2.其他机器上echo 1 | nc ip port,ip为服务器的ip,可通过hostname -i获取。
3.查看服务器是否接收到其他机器发送的数据。
到此这篇关于python中http.server内置库构建临时文件服务的文章就介绍到这了,更多相关python http.server构建临时文件服务内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Django中从mysql数据库中获取数据传到echarts方式
这篇文章主要介绍了Django中从mysql数据库中获取数据传到echarts方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-04-04


最新评论