from http.server import HTTPServer, SimpleHTTPRequestHandler
import sys

# 配置端口
PORT = 8888

class CORSRequestHandler(SimpleHTTPRequestHandler):
    def end_headers(self):
        # 配合 Nginx，这里其实可以简化，但保留也没事
        self.send_header('Access-Control-Allow-Origin', '*')
        self.send_header('Access-Control-Allow-Methods', 'GET')
        self.send_header('Cache-Control', 'no-store, no-cache, must-revalidate')
        return super(CORSRequestHandler, self).end_headers()

def run_server():
    # 【关键修改】只监听本地回环地址，不暴露给公网
    # 安全由 Nginx 负责，Python 只负责干活
    server_address = ('127.0.0.1', PORT)
    
    httpd = HTTPServer(server_address, CORSRequestHandler)
    print(f"✅ 数据服务器已启动 (内部监听): http://127.0.0.1:{PORT}")
    print(f"   请通过 Nginx 配置的域名访问数据")
    try:
        httpd.serve_forever()
    except KeyboardInterrupt:
        print("\n服务器已停止")
        httpd.server_close()

if __name__ == '__main__':
    run_server()