2

首先,我只想说我已经搜索过有关该主题的信息;有许多 stackoverflow 帖子都引用了 2008 年的同一篇博文:

http://boodebr.org/main/python/cherrypy-under-google-appserver#comment-51142

我知道新的 CherryPy 版本不再需要这篇博文提到的补丁。我的 GAE 应用程序的根目录中有cherrypy 文件夹——当我在程序中导入它时没有收到错误——但是在“import cherrypy”行之外,我无法让它工作。我不确定如何更改 app.yaml 文件以正确反映我使用的是cherrypy,而不是 webbapp2(或者如果这很重要)。

有人知道可以引导我完成 CherryPy/GAE 的更新教程吗?或者,有人可以发布一个简单的 hello world 程序,该程序将在 GAE 中使用cherrypy 工作吗?

编辑:如果有帮助,这是我现在在 main.py 中的代码 - 它从cherrypy返回两个 404 错误。

import cherrypy
import wsgiref.handlers 

class Root:
def index(self):
    return "Hello, CherryPy!"


app = cherrypy.tree.mount(Root(), "/")
wsgiref.handlers.CGIHandler().run(app)
4

1 回答 1

6

我有一个使用cherrypy在GAE中运行的网站,它非常简单,您的代码是正确的,但您没有公开index解释404.

无论如何,您应该使用 GAE 提供的run_wsgi_app,因此您的代码将如下所示:

import cherrypy
from google.appengine.ext.webapp.util import run_wsgi_app

class Root(object):

    @cherrypy.expose
    def index(self):
        return 'Hello CherryPy!'

app = cherrypy.tree.mount(Root(), '/')
run_wsgi_app(app)
于 2012-06-29T22:19:29.580 回答