我试图在 CherryPy 服务器上部署我的 Flask 应用程序。我喜欢它的简单和简约的本质。
所以我像下面这样对 CherryPy 进行 PIP'ed CherryPy
pip install CherryPy-15.0.0-py2.py3-none-any.whl
并编写了如下脚本 - 许多来源建议非常常见
from cherrypy import wsgiserver
from hello import app
d = wsgiserver.WSGIPathInfoDispatcher({'/': app})
server = wsgiserver.CherryPyWSGIServer(('0.0.0.0', 80), d)
if __name__ == '__main__':
try:
server.start()
except KeyboardInterrupt:
server.stop()
令我惊讶的是,我遇到了导入错误。经过几次谷歌搜索后,我了解到我必须将导入行更改为 cheroot 才能使其正常工作。
from cheroot.wsgi import Server
from cheroot.wsgi import PathInfoDispatcher
现在,我的代码工作正常。但是,如果这是使用 CherryPy WSGI 服务器的正确方法,或者我使用了错误版本的 CherryPy,我会感到有些困惑。我很困惑,因为 Cheroot 似乎已经有一年多的历史了(可以追溯到 2014 年),但是我在 CherryPy WSGI 服务器上找到的关于 Flask 的所有信息都在使用from cherrypy import wsgiserver
,而不是from cheroot.wsgi import Server
,甚至是最新的帖子。
这让我不确定我是否在做正确的事情。
有人可以阐明这种困惑吗?