【问题标题】:starting cherrypy properly正确启动cherrypy
【发布时间】:2012-12-30 17:36:25
【问题描述】:

如何正确启动cherrypy?它在 3.0 中对我有用,但现在我可以提供内容,但每次触摸源时都必须启动我的服务,即使自动重新加载器正在运行。

我已经添加了cherrypy.engine.block() 语句,该语句有效,但随后cherrypy 停止为我的应用程序提供服务(浏览器中没有响应,即使它正确打开了TCP 端口)。

那么有什么线索或洞察力去寻找哪里或什么?

这是在标准输出上:

[30/Dec/2012:17:05:28] ENGINE Bus STARTING<br>
[30/Dec/2012:17:05:28] ENGINE Started monitor thread 'Autoreloader'.<br>
[30/Dec/2012:17:05:28] ENGINE Started monitor thread '_TimeoutMonitor'.<br>
[30/Dec/2012:17:05:28] ENGINE Serving on 0.0.0.0:8080<br>
[30/Dec/2012:17:05:28] ENGINE Bus STARTED<br>
[30/Dec/2012:17:05:28] ENGINE Bus STARTING<br>
[30/Dec/2012:17:05:28] ENGINE Monitor thread 'Autoreloader' already started.<br>
[30/Dec/2012:17:05:28] ENGINE Monitor thread '_TimeoutMonitor' already started.<br>
[30/Dec/2012:17:05:28] ENGINE Already serving on 0.0.0.0:8080<br>
[30/Dec/2012:17:05:28] ENGINE Bus STARTED<br>

如何开始:

cherrypy.tree.mount(login(), '/', configPath)<br>
cherrypy.tree.mount(reservation(), '/reservation', configPath)<br>
cherrypy.tree.mount(administration(), '/reservation/administration', configPath)<br>
cherrypy.server.socket_host= "0.0.0.0"<br>
cherrypy.engine.start()

【问题讨论】:

  • 看起来好像已经开始了。您在启动时看到了哪些具体错误?
  • 我没有看到任何错误——就像我写的让它部分工作的唯一方法是只使用 start 而不使用 block 语句。有了它,cherrypy 不会提供任何服务,浏览器将永远等待响应。
  • 两次看到STARTED是不正常的。调用 start then block 是正确的方法,至少对于 CherryPy 3.1+
  • 我知道这个事实。但正如我所说,这是让它工作的唯一方法,它确实服务于所需的应用程序。而添加块时它根本不起作用。正如您指出的那样,这不是启动它的正确方法,这就是我寻求帮助的原因!
  • 不,实际上这是正确的方法。 CherryPy 提供了两种简单的机制:start+block 或 quickstart(内部调用前者)。当 CherryPy 本身是 mainloop 时使用 block,否则 start 确实足够了。

标签: python http cherrypy


【解决方案1】:

正如 Makoto 所说,您似乎已经启动了两次 CherryPy。您是否同时调用了 engine.start/engine.block 和cherrypy.quickstart?如果是这样,请删除其中一个。

【讨论】:

  • 请查看我对 makotos 回答的评论。谢谢!
  • 我只使用粘贴的代码 - 没有双重启动。
【解决方案2】:

我的问题是cherrypy的旧版本(实际上是他们网站上链接的最新版本!)与python 3.3结合使用。从 bitbucket 获取最新的软件包为我解决了这个问题!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-28
    • 2014-02-02
    • 2014-12-13
    • 2020-01-08
    • 2021-10-10
    • 2015-11-19
    • 1970-01-01
    相关资源
    最近更新 更多