首页 > 解决方案 > 如何在python中每次都以相同的IP地址打开http.server

问题描述

发生在我身上的是,当我使用命令打开python服务器时↓</p>

python -m http.server

它确实以某个 IP 地址打开服务器,但是当我更改为不同的 WIFI 连接时,我的服务器 IP 地址也会更改。

那么有什么方法可以让我打开服务器时,每次打开时都使用相同的 IP 地址。或者是否有任何模块可以做到这一点。

标签: pythonhttpserver

解决方案


这取决于您稍后要在代码中使用此 HTTP 服务器做什么,但通常您可能需要考虑在 Python 代码中使用该http模块(以及它的server子模块),而不是直接通过命令行创建它就像你上面的例子一样。

官方http模块文档中所述,可以像这样实例化这样的 HTTP 服务器:

def run(server_class=HTTPServer, handler_class=BaseHTTPRequestHandler):
    server_address = ('', 8000)
    httpd = server_class(server_address, handler_class)
    httpd.serve_forever()

正如您在上面的示例中看到的,您还可以设置服务器应该监听的 IP 地址(通过server_address变量)。


推荐阅读