首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在后台windows 10 Powershell中运行Python HTTPServer

在后台windows 10 Powershell中运行Python HTTPServer
EN

Stack Overflow用户
提问于 2021-02-22 06:01:07
回答 1查看 177关注 0票数 0

我已经测试了几个来自其他帖子的人的建议,但我不能像我使用其他脚本一样,在powershell中使用>pythonw server.py在后台运行我的服务器。

我的代码是:

代码语言:javascript
复制
#!/usr/bin/env python3

from http.server import HTTPServer, SimpleHTTPRequestHandler, test
import socketserver
from urllib.parse import urlparse
from urllib.parse import parse_qs
import requests
import asyncio
import sys, os, signal, threading

class MyHttpRequestHandler(SimpleHTTPRequestHandler):
    def end_headers (self):
        self.send_header('Access-Control-Allow-Origin', '*')
        SimpleHTTPRequestHandler.end_headers(self)

    def do_GET(self):

        self.send_response(200)

        self.send_header("Content-type", "text/html")

        self.end_headers()
        html = f"31"
        self.wfile.write(bytes(html, "utf8"))

def create_server():
    port = 8000
    handler_object = MyHttpRequestHandler
    my_server = socketserver.TCPServer(("", port), handler_object)

    print("serving at port:" + str(port))
    my_server.serve_forever()


threading.Thread(target=create_server).start()

服务器在前台运行正常(从PW >python server.py调用它),但在后台它不响应。

EN

回答 1

Stack Overflow用户

发布于 2021-02-22 12:19:10

我不确定是否可以使用PowerShell轻松完成,因为这意味着它是一个交互式外壳,而不是一个后台系统。

我有几个想法。其中一个比另一个难。

  1. 使用类似PyInstaller的工具将python代码编译成可执行文件,然后将可执行文件作为Windows服务运行(这充其量是很难做到的)

  1. 设置了一个计划任务,该任务在您登录系统时使用python运行python脚本。此选项可能是两个选项中较容易的一个,并且可以使用New-ScheduledTask

通过PowerShell完成

我认为第三种方法是通过IIS,但不幸的是,我对此并不熟悉。

编辑:另一个想法!安装Docker for Windows并在容器上运行服务器,而不是在Windows主机本身上运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66307616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档