3

我有这个脚本,我不知道如何让它在后台运行,因为当我关闭会话时它也会关闭。我尝试将它放在 crontab 上,但找不到 index.html 并在 / 中显示文件列表。

#! /opt/python3/bin/python3

from http.server import HTTPServer, CGIHTTPRequestHandler

port = 8000

httpd = HTTPServer(('', port), CGIHTTPRequestHandler)
print("Starting simple_httpd on port: " + str(httpd.server_port))
httpd.serve_forever()`
4

1 回答 1

4

基本上你是在问如何从你的 shell 中分离程序......这里有几个选项

  1. ./scriptname.py >/dev/null 2>&1 & # 将程序发送到后台
  2. 使用gnu-screen(或类似的)...通过屏幕运行您的程序,您可以在重新登录时将其恢复
  3. 正确地守护你的程序

更新:

最近我没有用python写过一个守护进程。分叉两次或使用守护程序库的日子似乎已经过去了。我目前使用supervisord并且听说过关于circus的好消息。这些只是可用于部署 python 守护程序的一小部分额外选项。

于 2013-05-15T16:23:59.147 回答