python服务_非常简单的Python3 HTTP服务
Python3中内置的http.server模块,使用python3-mhttp.server命令即可在当前目录启动HTTP服务,默认监听8000端口,也可在命令末尾指定其他端口号。为了让服务在后台持续运行,可使用nohup命令并结合输出重定向到空设备。此方法无需额外安装,适合快速文件共享和开发测试,非常简便实用。
说起来,很早之前在左耳朵耗子的博客上看到过一篇《非常简单的 Python HTTP 服务》,当时就觉得这招在临时需要分享文件或者快速搭个测试环境时太实用了。只要在目标目录下敲一行命令,一个 HTTP Server 就能跑起来——比如 Python 2 时代的那条经典指令:

$ python -m SimpleHTTPServer
不过嘛,随着 Python 2 逐渐退场,Python 3 成了主流,这条命令自然就失效了。好在 Python 3 里直接内置了 http.server 模块,对应的命令变成了:
$ python3 -m http.server
默认情况下,它监听的是 8000 端口。记得检查一下系统防火墙有没有放行这个端口,否则可能连不上。如果想换成别的端口,比如 1234,直接在命令末尾加上端口号就行:
$ python3 -m http.server 1234
还有一个常见的需求:让服务在后台持续运行。上面那条命令是前台运行的,会实时输出日志,一旦终端断开连接,服务也就停了。这时候可以借助 nohup 让它默默在后台干活:
$ nohup python3 -m http.server >>/dev/null &
当然,你也可以用 screen 之类的工具来实现后台运行,这里就不展开了。话说回来,如果遇到更复杂的场景……还是老老实实上 Nginx 吧。










































