我正在使用python http.server在不同的端口初始化2个实例并从文件夹中提供html文件......
import http.server
import socketserver
import os
PORT1 = 8000
PORT2 = 8001
os.chdir("html/folder1/")
Handler1 = http.server.SimpleHTTPRequestHandler
os.chdir("../folder2/")
Handler2 = http.server.SimpleHTTPRequestHandler
httpd1 = socketserver.TCPServer(("", PORT1), Handler1)
httpd2 = socketserver.TCPServer(("", PORT2), Handler2)
print("serving at port", PORT1)
print("serving at port", PORT2)
httpd1.serve_forever()
httpd2.serve_forever()
加载时没有错误,但我只能加载http://localhost:8000
我出错的任何想法?
答案 0 :(得分:1)
serve_forever
方法只是...提供http请求,永不退出。所以当你这样做时:
httpd1.serve_forever()
httpd2.serve_forever()
第二个语句永远不会被执行,因为第一个语句永远不会退出。可能你可以通过将每次调用serve_forever
放在专用线程中,然后等待所有线程完成来完成这项工作,但可能有更好的解决方案。