import os import threading from http.server import SimpleHTTPRequestHandler, HTTPServer _CLIENT_DIR = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), "client") class _Handler(SimpleHTTPRequestHandler): def __init__(self, *args, **kwargs): super().__init__(*args, directory=_CLIENT_DIR, **kwargs) def log_message(self, fmt, *args): pass def start_http_server(port=8080): server = HTTPServer(("0.0.0.0", port), _Handler) thread = threading.Thread(target=server.serve_forever, daemon=True) thread.start() return server def stop_http_server(server): if server: threading.Thread(target=server.shutdown, daemon=True).start()