使用Python http.server模块共享文件

http.server介绍

大家好,今天给大家介绍一下Python标准库中的http.server模块。这个模块提供了一种简单的方式来快速启动一个HTTP服务器,非常适合临时共享文件、测试、教学等轻量级场景。

功能演示

以Windows系统为例,可以在cmd窗口进入到提供下载的文件夹目录或者在图形界面中的资源管理进入到对应目录,输入cmd 回车后,打开命令行窗口

在命令行启动http.server模块时,Python 2 和Python 3 的用法有一些区别,在Python 3中,SimpleHTTPServer 模块被合并到了 http.server 模块中:

# python2
python -m SimpleHTTPServer [port]
# python3
python -m http.server [port]

这将在当前目录启动一个HTTP服务器,监听指定端口(默认8000端口)。

指定监听端口:

python -m SimpleHTTPServer 7800 # Python 2
python -m http.server 7800 # Python 3

指定http.server目录

如果你想设置HTTP服务器的根目录,可以使用--directory/-d选项:

python -m http.server --directory /path/to/dir [port]  # Python 3

上面的命令会将 /path/to/dir 设置为HTTP服务器的根目录。

小结

Python http.server 模块提供了一种快速创建 HTTP 服务器的简单方式,特别是可以非常方便地使用单行命令启动 HTTP 服务器,我使用最多的场景是办公网共享文件(尤其是大文件),不过记得添加相应防火墙策略或者关闭防火墙。

以上就是本次关于Python http.server模块的介绍,希望对大家有所帮助。如果你还有任何疑问,欢迎留言讨论,或者关注我的微信公众号运维小猪,谢谢!


这是一个从 https://juejin.cn/post/7369054503084376102 下的原始话题分离的讨论话题