Lighttpd、FastCGI、Django-如何自动重启?

Lighttpd、FastCGI、Django-如何自动重启?,django,lighttpd,fastcgi,Django,Lighttpd,Fastcgi,我正在开发机器上使用Lighttpd+FastCGI+Django。我通过manage.py的命令行选项启动FastCGI服务器 问题是,我确实经常对源代码进行更改,我需要让FastCGI自动获取这些更改,就像“/manage.py runserver”所做的那样 是否有用于此功能的命令行选项或任何其他解决方案?是否查看了manage.py的runserver部分中执行监视的代码?我认为没有理由不能将该代码复制粘贴到自定义manage.py脚本中,并将其设置为在检测到更改时运行lighty re

我正在开发机器上使用Lighttpd+FastCGI+Django。我通过manage.py的命令行选项启动FastCGI服务器

问题是,我确实经常对源代码进行更改,我需要让FastCGI自动获取这些更改,就像“/manage.py runserver”所做的那样


是否有用于此功能的命令行选项或任何其他解决方案?

是否查看了manage.py的runserver部分中执行监视的代码?我认为没有理由不能将该代码复制粘贴到自定义manage.py脚本中,并将其设置为在检测到更改时运行lighty restart命令

或者,您可以运行一个单独的python程序,使用类似pyinotify的包重新启动:


我想知道是否有人用过这个?我曾尝试使用django的autoreload.py实现重新加载机制,不幸的是,当fork出现时,我会出现如下错误:

django/core/servers/fastcgi.py”,第180行,在runfastcgi中 WSGIServer(WSGIHandler(),**wsgi_opts).run() 文件“build/bdist.freebsd-6.4-RELEASE-p9-amd64/egg/flup/server/fcgi_fork.py”,第140行,运行中 文件“build/bdist.freebsd-6.4-RELEASE-p9-amd64/egg/flup/server/preforkserver.py”,第119行,运行中 文件“build/bdist.freebsd-6.4-RELEASE-p9-amd64/egg/flup/server/preforkserver.py”,第450行,在installSignalHandlers中 ValueError:信号仅在主线程中工作

我的理想设置是能够在每次检测到代码更改后重新加载/终止我的fcgi进程并启动一个新进程,类似于django对其内部服务器所做的操作。我还尝试从autoreload.py中删除线程以克服此错误,但它似乎无法正确运行服务器(仍在调查)

也许有人在django的settings.py文件中尝试了CherryPies autoreload.py