防止CherryPy自动重新加载

时间:2016-02-16 21:24:55

标签: python cherrypy

令人难以置信的是,Stack Overflow尚未提出这个问题,但我给了它一个诚实的搜索......

我目前正在开发一个使用CherryPy的简单Web应用程序(以及路由和Mako,以防相关。)除了一些非常有用的机制,CherryPy拥有自动重新加载服务器之外,这很好。每当我更改代码时进程;不可避免的是,这将使用我的IDE调试器,由于半写代码而崩溃,并留下一个dud进程监听相关端口,导致后来的服务器进程拒绝运行,直到我手动强制退出任务管理器。

从四处查看,听起来这可以通过在初始化时传递给CherryPy的配置字典来禁用,例如。

conf = {'/': {'request.dispatch': d, 'engine.autoreload.on' : False}}

cherrypy.tree.mount(root=None, config=conf)

然而,这似乎没有任何改变。这里有什么我想念的吗?

1 个答案:

答案 0 :(得分:10)

您必须在global namespace because is part of the engine上配置自动重载:

app_conf = {'/': {'request.dispatch': d}}
cherrypy.config.update({
    'global': {
       'engine.autoreload.on' : False
     }
 })
cherrypy.tree.mount(root=None, config=app_conf)

或者更好地设置生产环境:

 cherrypy.config.update({
     'global': {
        'environment' : 'production'
      }
 })

这将禁用自动重载among other things